Описание
Каждый объект базы данных, например таблица, столбец или индекс, имеет имя. В операторах SQL эти имена называются идентификаторами объектов. Идентификаторы могут быть заключены в кавычки или использоваться без них. Если идентификатор содержит специальные символы или зарезервированные ключевые слова, его необходимо заключать в обратные кавычки (`) при каждом обращении к нему. Подробнее о зарезервированных ключевых словах см. в разделе Зарезервированные ключевые слова.
Ограничения для идентификаторов объектов
В Doris поддержка символов Unicode в идентификаторах объектов определяется переменной enable_unicode_name_support. Когда поддержка Unicode включена, в идентификаторах можно использовать символы любого языка, входящие в Unicode. Однако знаки пунктуации и другие символы не допускаются.
В Doris для разных объектов действуют разные ограничения на идентификаторы. Эти ограничения приведены ниже.
Имена таблиц
| Режим | Ограничения для идентификаторов |
|---|
| Поддержка Unicode отключена | ^[a-zA-Z][a-zA-Z0-9\\-_]*$ |
| Поддержка Unicode включена | ^[a-zA-Z\\p{L}][a-zA-Z0-9\\-_\\p{L}]*$ |
Имена столбцов
| Режим | Ограничения для идентификаторов |
|---|
| Поддержка Unicode отключена | ^[.a-zA-Z0-9_+\\-/?@#$%^&*\"\\s,:]{1,256}$ |
| Поддержка Unicode включена | ^[.a-zA-Z0-9_+\\-/?@#$%^&*\"\\s,:\\p{L}]{1,256}$ |
Имена 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 определяется параметром конфигурации label_regex_length в FE, значение которого по умолчанию равно 128. |
| Поддержка Unicode включена | ^[\\-_A-Za-z0-9:\\p{L}]{1,N}$, где N определяется параметром конфигурации label_regex_length в FE, значение которого по умолчанию равно 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}$ |