2013-07-10 2 views
1

В соответствии с документацией Oracle 12 (1.1.6.4) на Oracle's web site вы должны создать столбец varchar2 с более чем 4000 символами. Кто-нибудь сведущих, чтобы сделать это, как все это я получаю: -Oracle 12.1 Типы данных

Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production 
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options 

SQL> create table r1 (c1 integer, c2 varchar2(32000)); 
create table r1 (c1 integer, c2 varchar2(32000)) 
              * 
ERROR at line 1: 
ORA-00910: specified length too long for its datatype 
+3

Вам необходимо изменить параметр сервера 'max_string_size': http://docs.oracle.com/cd/E16655_01/server.121/e17209/sql_elements001.htm#SQLRF55623 и http://docs.oracle.com/ cd/E16655_01/server.121/e17615/refrn10321.htm # REFRN10321 –

ответ

3

documentation also states:

Начиная с Oracle Database 12c, вы можете указать максимальный размер 32767 байт для VARCHAR2, NVARCHAR2 , и типы данных RAW. Вы можете управление, поддерживает ли эта базу нового максимального размера по установке параметра MAX_STRING_SIZE инициализации следующим образом:

  • Если MAX_STRING_SIZE = STANDARD, то ограничения по размеру для версий до Oracle Database 12c применяются: 4000 байт для типы данных VARCHAR2 и NVARCHAR2 и 2000 байт для типа данных RAW. Это значение по умолчанию.

  • Если MAX_STRING_SIZE = EXTENDED, то ограничение размера составляет 32767 байт для типов данных VARCHAR2, NVARCHAR2 и RAW.

Таким образом, вы должны установить MAX_STRING_SIZE initialisation parameter, чтобы сделать эту работу.

(У меня еще не было шанса сыграть с 12c, поэтому я просто продолжаю то, что говорят в этом документе).

+0

Спасибо за это. Я продолжаю забывать, что Oracle записывает одни и те же вещи в нескольких местах, но не всегда с той же информацией ;-) –

+0

@RichardSpencer - ну, они не хотели бы сделать жизнь легкой. Это было связано с разделом 1.1.6.4 в руководстве по новым функциям, поэтому вы были всего в одном клике. –

+0

- Мне жаль, что я никогда не задавал вопрос. Я полностью сломал свою базу данных и не могу запустить ее :-( –