logo

Instrução de Inserção Oracle

No Oracle, a instrução INSERT é usada para adicionar um único registro ou vários registros à tabela.

Sintaxe: (Inserindo um único registro usando a palavra-chave Values):

 INSERT INTO table (column1, column2, ... column_n ) VALUES (expression1, expression2, ... expression_n ); 

Sintaxe: (Inserindo vários registros usando uma instrução SELECT):

 INSERT INTO table (column1, column2, ... column_n ) SELECT expression1, expression2, ... expression_n FROM source_table WHERE conditions; 

Parâmetros:

1) mesa: A tabela na qual inserir os registros.

2) coluna1, coluna2, ... coluna_n:

As colunas da tabela para inserir valores.

3) expressão1, expressão2, ... expressão_n:

Os valores a serem atribuídos às colunas da tabela. Portanto, à coluna1 seria atribuído o valor de expressão1, à coluna2 seria atribuído o valor de expressão2 e assim por diante.

4) tabela_fonte:

A tabela de origem ao inserir dados de outra tabela.

5) condições:

As condições que devem ser atendidas para que os registros sejam inseridos.

Exemplo de inserção Oracle: por palavra-chave VALUE

É a maneira mais simples de inserir elementos em um banco de dados usando a palavra-chave VALUE.

Veja este exemplo:

Considere aqui a tabela de fornecedores já criada. Adicione uma nova linha onde o valor de Supplier_id seja 23 e Supplier_name seja Flipkart.

Veja este exemplo:
 INSERT INTO suppliers (supplier_id, supplier_name) VALUES (50, 'Flipkart'); 
Saída:
 1 row(s) inserted. 0.02 seconds 

Exemplo de inserção do Oracle: por instrução SELECT

Este método é utilizado para casos de inserção mais complicados. Neste método a inserção é feita pela instrução SELECT. Este método é usado para inserir vários elementos.

Veja este exemplo:

Neste método, inserimos valores na tabela 'fornecedores' da tabela 'clientes'. Ambas as tabelas já estão criadas com suas respectivas colunas.

Execute esta consulta:
 INSERT INTO suppliers (supplier_id, supplier_name) SELECT age, address FROM customers WHERE age > 20; 
Saída:
 4 row(s) inserted. <p>0.00 seconds </p>

Você pode até verificar o número de linhas que deseja inserir seguindo a seguinte instrução:

 SELECT count(*) FROM customers WHERE age &gt; 20; 
Saída:
 Count(*) 4