オブジェクト識別子
概要
Table、カラム、インデックスなどの各データベースオブジェクトには名前があります。SQL文では、これらの名前はオブジェクト識別子と呼ばれます。識別子はクォートありまたはクォートなしにできます。識別子に特殊文字や予約キーワードが含まれている場合、参照するたびにバッククォート(`)でクォートする必要があります。予約キーワードの詳細については、Reserved Keywordsセクションを参照してください。
オブジェクト識別子の制限
Dorisでは、オブジェクト識別子は変数enable_unicode_name_supportによって制御され、Unicode文字がサポートされるかどうかを決定します。Unicode文字サポートが有効になっている場合、識別子はUnicodeの任意の言語文字を使用できます。ただし、句読点やその他の文字は使用できません。
Dorisでは、オブジェクトによって識別子に対する制限が異なり、各オブジェクトの具体的な制限を以下に示します。
概要
Table、カラム、インデックスなどの各データベースオブジェクトには名前があります。SQL文では、これらの名前はオブジェクト識別子と呼ばれます。識別子はクォートありまたはクォートなしにできます。識別子に特殊文字や予約キーワードが含まれている場合、参照するたびにバッククォート(`)でクォートする必要があります。予約キーワードの詳細については、Reserved Keywordsセクションを参照してください。
オブジェクト識別子の制限
Dorisでは、オブジェクト識別子は変数enable_unicode_name_supportによって制御され、Unicode文字がサポートされるかどうかを決定します。Unicode文字サポートが有効になっている場合、識別子はUnicodeの任意の言語文字を使用できます。ただし、句読点やその他の文字は使用できません。
Dorisでは、オブジェクトによって識別子に対する制限が異なり、各オブジェクトの具体的な制限を以下に示します。
Table名
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[a-zA-Z][a-zA-Z0-9-_]*$ |
| Unicode有効モード | ^[a-zA-Z\\p{L}][a-zA-Z0-9-_\\p{L}]*$ |
カラム名
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[_a-zA-Z@0-9\\s/][.a-zA-Z0-9_+-/?@#$%^&*\"\\s,:]{0,255}$ |
| Unicode有効モード | ^[_a-zA-Z@0-9\\p{L}][.a-zA-Z0-9_+-/?@#$%^&*\\p{L}]{0,255}$ |
OUTFILE名
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[_a-zA-Z][a-zA-Z0-9-_]{0,63}$ |
| Unicode有効モード | ^[_a-zA-Z\\p{L}][a-zA-Z0-9-_\\p{L}]{0,63}$ |
ユーザー名
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[a-zA-Z][a-zA-Z0-9.-_]*$ |
| Unicode有効モード | ^[a-zA-Z\\p{L}][a-zA-Z0-9.-_\\p{L}]*$ |
LABEL名
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[-_A-Za-z0-9:]{1,N}$、ここでNはFEのlabel_regex_length設定によって決定され、デフォルト値は128です。 |
| Unicode有効モード | ^[-_A-Za-z0-9:\\p{L}]{1,N}$、ここでNはFEのlabel_regex_length設定によって決定され、デフォルト値は128です。 |
その他
| モード | 識別子の制限 |
|---|---|
| Unicode無効モード | ^[a-zA-Z][a-zA-Z0-9-_]{0,63}$ |
| Unicode有効モード | ^[a-zA-Z\\p{L}][a-zA-Z0-9-_\\p{L}]{0,63}$ |