Oracle Tipos de dados PL/SQL: Booleano, Número, Data [Exemplo]
⚡ Resumo Inteligente
Os tipos de dados PL/SQL definem como Oracle Armazena, manipula e restringe cada valor em um bloco. Agrupa-se em famílias de caracteres, números, booleanos, datas e objetos grandes (LOB), cada uma com seu próprio formato de armazenamento, limites de tamanho e regras de atribuição.

O que são tipos de dados PL/SQL?
Tipos de dados Em PL/SQL, define-se como os dados serão armazenados, manipulados e tratados. Oracle Durante o armazenamento e processamento, os tipos de dados são associados a um formato de armazenamento específico e a restrições de intervalo. OracleA cada valor ou constante é atribuído um tipo de dados.
A principal diferença entre PL/SQL e SQL A principal diferença é que os tipos de dados SQL são limitados às colunas da tabela, enquanto os tipos de dados PL/SQL são usados em todo o sistema. Blocos PL/SQL. Mais sobre isso posteriormente no tutorial.
Segue abaixo um diagrama dos diferentes Oracle Tipos de dados PL/SQL:

Tipo de dados PL/SQL CHARACTER
Este tipo de dados armazena caracteres alfanuméricos em formato de string. Os valores literais devem sempre ser colocados entre aspas simples ao serem atribuídos a um tipo de dados CHARACTER.
Este tipo de dados de caractere é ainda classificado da seguinte forma:
- Tipo de dados CHAR (tamanho de string fixo)
- Tipo de dados VARCHAR2 (tamanho de string variável)
- tipo de dados VARCHAR
- NCHAR (tamanho de string fixo nativo)
- NVARCHAR2 (tamanho da string variável nativa)
- LONGO e LONGO CRU
| Tipo de dados | Descrição | Sintaxe |
|---|---|---|
| CARACTERES | Este tipo de dados armazena um valor de string, e o tamanho da string é fixo no momento da declaração. variável.
|
grade CHAR; manager CHAR (10):= 'guru99'; Explicação da sintaxe:
|
| VARCHAR2 | Este tipo de dado armazena uma string, mas o comprimento não é fixo.
|
manager VARCHAR2(10) := 'guru99'; Explicação da sintaxe:
|
| VARCHAR | Isso é sinônimo do tipo de dados VARCHAR2.
|
manager VARCHAR(10) := 'guru99'; Explicação da sintaxe:
|
| NCHAR | Esse tipo de dados é o mesmo que CHAR, mas o conjunto de caracteres é o conjunto de caracteres nacional.
|
native NCHAR(10);
Explicação da sintaxe:
|
| NVARCHAR2 | Esse tipo de dados é o mesmo que VARCHAR2, mas o conjunto de caracteres é o conjunto de caracteres nacional.
|
Native_var NVARCHAR2(10):= 'guru99'; Explicação da sintaxe:
|
| LONGO e LONGO CRU | Este tipo de dados armazena textos grandes ou dados brutos com um tamanho máximo de 2 GB.
|
Large_text LONG; Large_raw LONG RAW; Explicação da sintaxe:
Observação: O uso do tipo de dados LONG não é recomendado por OracleO tipo de dados LOB deve ser preferido. |
Tipo de dados PL/SQL NUMBER
Este tipo de dados armazena números de ponto fixo ou flutuante com até 38 dígitos de precisão. É usado para trabalhar com campos que contêm apenas dados numéricos. A variável pode ser declarada com ou sem detalhes de precisão e casas decimais. Os valores não precisam estar entre aspas quando atribuídos.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Explicação da sintaxe:
- A primeira declaração declara a variável 'A' do tipo de dados numérico com precisão total de 8 e 2 dígitos decimais.
- A segunda declaração define 'B' como um tipo de dados numérico com precisão total de 8 e sem casas decimais.
- A terceira é a mais genérica, declarando 'C' como tipo de dados numéricos, sem restrição de precisão ou casas decimais. Ela pode conter até 38 dígitos.
Tipo de dados PL/SQL BOOLEAN
Este tipo de dados armazena valores lógicos. Oracle O tipo de dados booleano representa VERDADEIRO ou FALSO e é usado principalmente em instruções condicionais. Os valores não precisam estar entre aspas quando atribuídos.
Var1 BOOLEAN;
Explicação da sintaxe:
- A variável 'Var1' foi declarada como do tipo de dados BOOLEAN. O resultado será verdadeiro ou falso, dependendo da condição definida.
Tipo de dados DATA PL/SQL
Este tipo de dados armazena valores no formato de data, como dia, mês e ano. Sempre que uma variável é definida com o tipo de dados DATE, ela pode armazenar informações de hora; por padrão, a hora é definida como 12:00:00 se não for especificada. Os valores precisam estar entre aspas quando atribuídos.
A norma Oracle O formato de hora para entrada e saída é 'DD-MON-YY', que é definido em NLS_PARAMETERS (NLS_DATE_FORMAT) no nível da sessão.
newyear DATE:= '01-JAN-2015'; current_date DATE:= SYSDATE;
Explicação da sintaxe:
- A variável 'newyear' foi declarada como do tipo de dados DATE e recebeu o valor de 1 de janeiro de 2015.
- A segunda declaração declara 'current_date' como um tipo de dados DATE e atribui a data atual do sistema.
- Ambas as variáveis contêm informações temporais.
Tipo de dados LOB PL/SQL
Esse tipo de dado é usado principalmente para armazenar e manipular grandes blocos de dados não estruturados, como imagens e arquivos multimídia. Oracle O tipo de dados LOB é preferido ao tipo LONG por ser mais flexível. As principais vantagens do LOB sobre o LONG são:
- Uma tabela é limitada a uma coluna LONG, enquanto não há restrição quanto ao número de colunas LOB.
- As ferramentas de interface de dados aceitam LOB durante a replicação, mas omitem colunas LONG, que devem ser replicadas manualmente.
- Uma coluna LONG armazena até 2 GB, enquanto uma coluna LOB pode armazenar até 128 TB.
- Oracle O sistema continua aprimorando o tipo de dados LOB a cada versão, enquanto o tipo LONG permanece praticamente inalterado.
Portanto, é sempre recomendável usar o tipo de dados LOB em vez de LONG. Os diferentes tipos de dados LOB abaixo podem armazenar até 128 terabytes:
- BLOB
- CLOB e NCLOB
- ARQUIVOB
| Tipo de dados | Descrição | Sintaxe |
|---|---|---|
| BLOB | Este tipo de dados armazena dados LOB em formato de arquivo binário até um máximo de 128 TB. Ele não armazena dados com base em detalhes de conjunto de caracteres, portanto, pode armazenar dados não estruturados, como objetos multimídia e imagens. |
Binary_data BLOB;
Explicação da sintaxe:
|
| CLOB e NCLOB | O formato CLOB armazena dados LOB no conjunto de caracteres, enquanto o NCLOB armazena dados no conjunto de caracteres nativo. Como utilizam armazenamento baseado em conjunto de caracteres, não podem armazenar dados como multimídia ou imagens. O tamanho máximo é de 128 TB. |
Charac_data CLOB;
Explicação da sintaxe:
|
| ARQUIVOB |
|
