You are hereNo es posible CREATE/ALTER TABLE NVARCHAR2(4000)

No es posible CREATE/ALTER TABLE NVARCHAR2(4000)


By surachart - Posted on 11 December 2008

Quizas alguien se pregunte: ¿Como puedo crear/alterar una tabla con NVARCHAR(4000)

Al consultar la documentación de Oracle, podrán darse cuenta que el tipo de datos NVARCHAR2 depende de la configuración del conjunto de caracteres (National Character Set)

El tamaño maximo de columna permitido es 4000 caracteres cuando el conjunto de carateres es UTF8 y 2000 cuando es AL16UTF16. La longitud maxima de un NVARCHAR2 en bytes es 4000. Ambos limites, el de bytes y el de caracteres se deben observar, asi que el numero maximo de caracteres que de hecho es permitido en una columna NVARCHAR2 es el numero de caracteres que pueden ser guardados en 4000 bytes.

Este link nos lleva al documento http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96529/ch6....

Ejemplo:
SELECT parameter, value FROM nls_database_parameters WHERE parameter LIKE 'NLS_NCHAR_CHAR%';

PARAMETER VALUE
----------------------------------------
NLS_NCHAR_CHARACTERSET AL16UTF16

create table A000 (col_test NVARCHAR2(4000));
create table A000 (col_test NVARCHAR2(4000))
*
ERROR at line 1:
ORA-00910: specified length too long for its datatype

create table A000 (col_test NVARCHAR2(2001));
create table A000 (col_test NVARCHAR2(2001))
*
ERROR at line 1:
ORA-00910: specified length too long for its datatype

create table A000 (col_test NVARCHAR2(2000));

Table created.

Saludos desde Indonesia!



Syndicate

Syndicate content

Follow DatabasesLA on Twitter

Who's online

There are currently 0 users and 2 guests online.

Estadisticas

Locations of visitors to this page

hidden hit counter