Introdução ( o mais usado mas o conjunto é que faz acontecer – insert é o primeiro)

INSERT é o segundo comando mais utilizado em SQL, pois é o responsável por inserir informações no banco de dados.

Ele faz parte do subconjunto de comandos chamado DQL ( Data Query Language ) que é responsável, como citado acima, por incluir no banco de dados relacional, informações que serão posteriormente buscadas nas tabelas de um respectivo banco de dados.

Esse comando trabalha com scripts fixos onde todas as informações de um dado registro já estão todas contidas no mesmo ou então trabalha com parâmetros passados pelo software que capturou as informações na interface do usuário. Indica ao banco de dados o conjunto de informações ( registro ) que o solicitante, que pode ser um programa, um site, um app de celular, quais os dados devem ser armazenados.

o comando select é o mais “importante” pois sem ele, não temos as informações para trabalhar 😉

Esse comando pode adicionalmente trabalhar em conjunto com o comando SELECT, ampliando sua funcionalidade e possibilitando fazer cálculos com campos, expressões, antes mesmo de sua inserção na base de dados, preparando as informações para serem mais úteis ou de acordo com a necessidade das buscas.
Então, o que é o INSERT ?

É um dos comandos mais importantes de um banco de dados relacional, responsável por recuperar informações contidas numa base de dados, em uma ou mais tabelas.

*** Onde pode ser usado esse comando INSERT

Nos programas ele tem função essencial que é trazido para resposta ao usuário final.

Essa é uma utilização trivial, no entanto, o comando pode ser utilizado como parte de um outro comando SQL como insert, updade, delete, para filtrar informações que servirão como critérios de seleção para suas respectivas funções ou atividades.

Um uso muito interessante é quando utilizado como parte de um procedimento ( stored procedure ) para criar tabelas temporárias, confirmar a existência de informações antes de um inclusão ou atualização da mesma ( update ).

*** Como usar o INSERT

O fato de ser parte do INSERT, garante que a maneira de seu uso seja padronizado, ou seja, da maneira que é utilizado em sua sintaxe ( maneira de escrever ) seja exatamente a mesma em todos os lugares que fazem interface, se comunicam com o SGBD ( Sistema Gerenciador de Banco de Dados ).

Então quando o comando é utilizado num programa, em qualquer linguagem como java, php, JSP, .net, c-sharp, todas elas utilizarão da maneira que escrevermos, bastando colocar o comando por inteiro dentro de uma string que será repassada ao banco de dados que a interpretará e retornará um resultado.

Quase da mesma maneira é feita quando utilizados em frameworks como Spring, Hibernate entre outros, que criam dinamicamente os comandos, mas no fim das contas, uma string com o comando INSERT será criada e repassado ao banco de dados também.

Quando pensamos em internet, parece que funciona diferente, mas não ! Funciona da mesma maneira que nos casos citados anteriormente, onde uma string é montada e passada ao banco de dados.

Funciona igual justamente pela padronização promovida pela linguagem SQL, bastando para isso, que o SGBD implemente a padronização sugerida pela especificação SQL ANSI.
*** Quem usa esse comando INSERT

Todos que se comunicam com uma base de dados por meio de SQL, utilizam esse comando para acessar as informalçoes contidas nas tabelas solicitados.
*** Estrutura básica

Veja essa estrutura de exemplo para o comando INSERT

INSERT
*,
expressão1 alias1,
campo2 alias2,
…,
informaçãoN aliasN
FROM
<tabela>
WHERE
<condição/expressão verdadeira>
ORDER BY
campo DESC, campo ASC
HAVING
<expressão>

Entenda o seu nível de uso do comando INSERT

Veja se você reconhece alguma dessas utilizações do comando

Usa CONSCIENTEMENTE INSERT com campos pensando nos índices, informando parâmetros para “forçar” um índice específico ( avançado )

Não pensa em índices ( básico )

Cria Subselects ( intermediário )

faz uso de select para tabela temporária em script ( avançado )

usa preparação de query para performance – Prepare ( expert ),

usa comandos any, exists( avançado )

troca between por >= e <= para aproveitar o índice ( avançado )

usa atalhos como top 1, distinct em subselects ( expert )

sabe criar “recursividade” em select única ( expert )

Summary
Review Date
Reviewed Item
SQL Insert - inclusão em banco de dados relacional - comando
Author Rating
51star1star1star1star1star