A linguagem SQL > DDL > Tabelas > Tipos de colunas
Tipos de colunas tl_logo2.jpg

Quando se cria uma tabela é necessário especificar o tipo de dados das colunas e a sua dimensão. Esta determina o comprimento máximo que podem ter os valores nela armazenados.

Tipo de dados Descrição
VARCHAR2(n [byte|char]) Armazena uma cadeia de caracteres de comprimento variável. O valor máximo de n são 4000 bytes (com MAX_STRING_SIZE = STANDARD) ou 32767 bytes (com MAX_STRING_SIZE = EXTENDED). O Oracle só guarda o que o utilizador introduzir não preenchendo o que falta para o limite n. Se usarmos BYTE n traduz o número de bytes;
NVARCHAR2(n) Armazena uma cadeia de caracteres de comprimento variável em formato UNICODE. O valor n representa o número máximo de caracteres. Um caracter pode ocupar 2 bytes se usarmos AL16UTF16 encoding ou 3 bytes para UTF8 encoding. O valor máximo são 4000 bytes. O Oracle só guarda o que o utilizador introduzir não preenchendo o que falta para o limite n;
CHAR(n [byte|char]) Caracteres de comprimento fixo n. O valor por omissão é 1 sendo o valor máximo 2000. A base de dados ocupa sempre n caracteres pois preenche o que falta com espaços em branco;
NUMBER Número em virgula flutuante com 38 digitos significativos de precisão;
NUMBER(n) Número inteiro com 'n' digitos de precisão. Máximo de 38;
NUMBER(n,d) Número com n digitos sendo d casas décimais (à direita da virgula);
DATE Data desde 1 Jan de 4712 AC até 31 de Dez de 9999 DC. Também é armazenada a hora, minuto e segundo. O calendário interno da base de dados tem em conta as alterações de calendário impostas ao longo do tempo, por exemplo a passagem do calendário Juliano para Gregoriano em 1582-10-05, onde foram eliminados 10 dias;
TIMESTAMP, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE Datas desde 1 Jan de 1970 com hora, minuto, segundo e centésima de segundo. Num casos é armazenada a referência para o fuso horário e noutro é usado o fuso horário local;
BLOB Binary Large Object. Armazena até 4Gb em formato binário
CLOB Character Large Object. Armazena até 4Gb de texto

Exemplos:

NUMBER(4) Armazena números até 4 digitos: 9999
NUMBER(8,3) Número com a máscara: 9999.999
VARCHAR2(1000 CHAR) Cadeia de caracteres com comprimento máximo de 1000 caracteres mas pode ter menos.
CHAR(80 CHAR) Cadeia de caracteres de comprimento fixo 80. Se o valor introduzido tiver 10 caracteres, o espaço que sobra é preenchido com brancos.

Uma descrição completa dos tipos suportados pelo SGBD Oracle pode ser encontrada nestes links:

Neste link encontramos uma comparação entre os tipos de dados Oracle e os definidos pela norma ANSI: http://docs.oracle.com/cd/B28359_01/server.111/b28286/sql_elements001.htm#i54335

bthome.gifTopo


Realizado por Turtle Learning ®. Última alteração em 2012-05-01