Страницы

Поиск по вопросам

суббота, 21 марта 2020 г.

Какая максимальная длина идентификаторов и можно ли ее изменить?

#sql #oracle #plsql #oracle11g #oracle12c


Использую версию 11g и хотел бы давать имена длина которых более чем 30 символов.
Мне известно, что макс. длина в 11g только 30 символов:

create table tab (very_very_very_very_very_very_very_very_LongColumnName number)



  ORA-00972: identifier is too long


Возможно ли как-то изменить макс. длину? 

Какая макс. длина идентификаторов в версии 12c?
    


Ответы

Ответ 1



Имена объектов БД 11g, а также в версии 12cR1, ограничены 30 байтами (в single-byte кодировке это эквивалентно 30 символам). Можно ли это изменить? Нет, не существует способа измененить это, чтобы можно было пользоваться именами обьектов БД длиной более чем 30 байтов. Ограничение в 30 байт было впервые снято во втором выпуске 12c ( 12cR2), и если значение параметра инициаллизации COMPATIBLE установленно в 12.2 и выше, то макс. длина идентификаторов может быть до 128 байт. SQL> show parameters compat NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ compatible string 12.2.0 SQL> create table tab (very_very_very_very_very_very_very_very_LongColumnName number); Table TAB created. SQL> declare very_very_very_very_very_very_very_very_LongVariableName number; begin null; end; / PL/SQL procedure successfully completed. Источник ответа: @Nick Krasnov.

Комментариев нет:

Отправить комментарий