Tipos de colunas |
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
Realizado por Turtle Learning ®. Última alteração em 2012-05-01