Tipos de datos (PL/SQL)

Se da soporte a una amplia gama de tipos de datos que se pueden utilizar para declarar variables en un bloque PL/SQL.

Tabla 1. Tipos de datos escalares soportados que están disponibles en PL/SQL
Tipo de datos PL/SQL Db2® Tipo de datos SQL Descripción
BINARY_INTEGER INTEGER Datos numéricos enteros
BLOB BLOB (4096) Datos binarios
BLOB (n)
BLOB (n)
n = 1 a 2 147 483 647
Datos binarios de objetos grandes
BOOLEAN BOOLEAN Booleano lógico (true o false)
CAR CHAR (n)
n = 63 si las unidades de serie del entorno se establecen en CODEUNITS32
n = 255 de lo contrario
Datos de serie de caracteres de longitud fija de longitud n
CHAR (n)
CHAR (n)
n = 1 a 255
Datos de serie de caracteres de longitud fija de longitud n
CHAR (n CHAR)
CHAR (n CODEUNITS32 )
n = 1 a 63
Datos de serie de caracteres de longitud fija de longitud n UTF-32 unidades de código1
CHAR VARYING (n) VARCHAR (n) Datos de serie de caracteres de longitud variable de longitud máxima n
CHAR VARYING (n CHAR)
VARCHAR (n CODEUNITS32 )
n = 1 a 8 168
Datos de serie de caracteres de longitud variable de longitud máxima n UTF-32 unidades de código1
CHARACTER CHARACTER (n)
n = 63 si las unidades de serie del entorno se establecen en CODEUNITS32
n = 255 de lo contrario
Datos de serie de caracteres de longitud fija de longitud n
CARÁCTER (n)
CHARACTER (n)
n = 1 a 255
Datos de serie de caracteres de longitud fija de longitud n
CARÁCTER (n CHAR) CHARACTER (n CODEUNITS32 )
n = 1 a 63
Datos de serie de caracteres de longitud fija de longitud n UTF-32 unidades de código1
CARÁCTER VARIABLE (n)
VARCHAR (n)
n = 1 a 32 672
Datos de serie de caracteres de longitud variable de longitud máxima n
CARÁCTER VARIABLE (n CHAR)
VARCHAR (n CODEUNITS32 )
n = 1 a 8 168
Datos de serie de caracteres de longitud variable de longitud máxima n UTF-32 unidades de código1
CLOB CLOB (1M) Datos de objeto grande de tipo carácter
CLOB (n)
CLOB (n)
n = 1 a 2 147 483 647
Datos de objeto grande de caracteres de longitud n
CLOB (n CHAR)
CLOB (n CODEUNITS32 )
n = 1 a 536 870 911
Datos de serie de objeto grande de caracteres de longitud n UTF-32 unidades de código1
DATE FECHA 2 Datos de fecha y hora (expresados en el segundo)
DEC DEC (9, 2) Datos numéricos decimales
DEC (p)
DEC (p)
p = 1 a 31
Datos numéricos decimales de precisión p
DEC (p, s)
DEC (p, s)
p = 1 a 31; s = 1 a 31
Datos numéricos decimales de precisión p y escala s
DECIMAL DECIMAL (9, 2) Datos numéricos decimales
DECIMAL (p)
DECIMAL (p)
p = 1 a 31
Datos numéricos decimales de precisión p
DECIMAL (p, s)
DECIMAL (p, s)
p = 1 a 31; s = 1 a 31
Datos numéricos decimales de precisión p y escala s
DOUBLE DOUBLE Número de coma flotante de precisión doble
DOUBLE PRECISION DOUBLE PRECISION Número de coma flotante de precisión doble
FLOAT FLOAT Datos numéricos flotantes
FLOAT (n)
n = 1 a 24
REAL Datos numéricos reales
FLOAT (n)
n = 25 a 53
DOUBLE Datos numéricos dobles
INT INT Datos numéricos enteros de cuatro bytes con signo
INTEGER INTEGER Datos numéricos enteros de cuatro bytes con signo
LONG CLOB (32760) Datos de objeto grande de tipo carácter
LONG RAW BLOB (32760) Datos binarios de objetos grandes
LONG VARCHAR CLOB (32760) Datos de objeto grande de tipo carácter
NATURAL INTEGER Datos numéricos enteros de cuatro bytes con signo
NCHAR NCHAR (n) 3
n = 63 si el parámetro de configuración NCHAR_MAPPING se establece en GRAPHIC_CU32 o CHAR_CU32
n = 127 de lo contrario
Datos de serie de caracteres nacionales de longitud fija de longitud n
NCHAR (n)
n = 1 a 2000
NCHAR (n) 3 Datos de serie de caracteres nacionales de longitud fija de longitud n
NCLOB 4 NCLOB (1M) 3 Datos de objeto grande de caracteres nacionales
NCLOB (n) NCLOB (n) 3 Datos de objeto grande de caracteres nacionales de longitud máxima n
NVARCHAR2 NVARCHAR 3 Datos de serie de caracteres nacionales de longitud variable
NVARCHAR2 (n) NVARCHAR (n) 3 Datos de serie de caracteres nacionales de longitud variable de longitud máxima n
NUMBER NÚMERO 5 Datos numéricos exactos
NÚMERO (p) NUMBER (p) 5 Datos numéricos exactos de precisión máxima p
NUMBER (p, s)
NUMBER (p, s) 5
p = 1 a 31; s = 1 a 31
Datos numéricos exactos de precisión máxima p y escala s
NUMÉRICO NUMÉRICO (9.2) Datos numéricos exactos
NUMÉRICO (p)
NUMERIC (p)
p = 1 a 31
Datos numéricos exactos de precisión máxima p
NUMERIC (p, s)
NUMERIC (p, s)
p = 1 a 31; s = 0 a 31
Datos numéricos exactos de precisión máxima p y escala s
PLS_INTEGER INTEGER Datos numéricos enteros
RAW VARBINARY(32672) Datos de serie binaria de longitud variable
RAW (n)
VARBINARY (n)
n = 1 a 32 672
Datos de serie binaria de longitud variable
SMALLINT SMALLINT Datos enteros de dos bytes con signo
TIMESTAMP (0) TIMESTAMP (0) Datos de fecha con información de indicación de fecha y hora
TIMESTAMP (p) TIMESTAMP (p) Datos de fecha y hora con segundos fraccionarios opcionales y precisión p
VARCHAR VARCHAR (4096) Datos de serie de caracteres de longitud variable con una longitud máxima de 4096
VARCHAR (n) VARCHAR (n) Datos de serie de caracteres de longitud variable con una longitud máxima de n
VARCHAR (n CHAR)
VARCHAR (n CODEUNITS32 )
n = 1 a 8 168
Datos de serie de caracteres de longitud variable de longitud máxima n UTF-32 unidades de código1
VARCHAR2 (n) VARCHAR2 (n) 6 Datos de serie de caracteres de longitud variable con una longitud máxima de n
VARCHAR2 (n CHAR)
VARCHAR2 (n CODEUNITS32 )
n = 1 a 8 168 6
Datos de serie de caracteres de longitud variable de longitud máxima n UTF-32 unidades de código1
  1. Si las unidades de serie del entorno se establecen en CODEUNITS32, el atributo CHAR de la longitud está implícito. Este comportamiento es similar a NLS_LENGTH_SEMANTICS=CHAR en una base de datos Oracle .
  2. Cuando se establece la variable de registro DB2_COMPATIBILITY_VECTOR para el tipo de datos DATE, DATE es equivalente a TIMESTAMP (0).
  3. Las series de caracteres nacionales son sinónimos de series de caracteres o series gráficas con la correlación de tipos de datos determinada por el parámetro de configuración NCHAR_MAPPING . Consulte "Series de caracteres nacionales" para obtener más detalles.
  4. Para ver las restricciones sobre el tipo de datos NCLOB en determinados entornos de base de datos, consulte Restricciones sobre el soporte de PL/SQL.
  5. Este tipo de datos está soportado cuando el parámetro de configuración de base de datos number_compat se establece en ON.
  6. Este tipo de datos está soportado cuando el parámetro de configuración de base de datos varchar2_compat se establece en ON.
Además de los tipos de datos escalares descritos en la Tabla 1, el servidor de datos Db2 también da soporte a tipos de colección, tipos de registro y tipos REF CURSOR.