Existem tantos bancos de dados diferentes no mundo e muitos deles usam a linguagem SQL para sua programação. É muito fácil supor que, se eles estiverem usando SQL, podemos facilmente usar o código de um banco de dados para outro banco de dados. Infelizmente a realidade é muito diferente, nem todos os scripts de um banco de dados funcionam em outro banco de dados. Hoje veremos uma pergunta muito interessante onde o usuário fez uma pergunta sobre inserir várias linhas em uma única consulta SQL.
Pergunta: Escreva um código SQL que inserirá várias linhas em uma única consulta SQL. A condição para este script era tal que ele deveria funcionar no SQL Server, MySQL e PostgreSQL sem alterar uma única linha de código.
Resposta: Escrever um código para inserir várias linhas em uma única consulta SQL não é uma tarefa difícil, mas é realmente um desafio criar um script que funcione com vários bancos de dados. No entanto, é possível criar um script que funcione em vários bancos de dados.
Primeiro, vamos criar uma tabela de amostra com duas colunas. Depois que a tabela for criada, insira três linhas diferentes em uma única consulta SQL.
CREATE TABLE SampleTable (ID INT, Col1 VARCHAR(100)); INSERT INTO SampleTable (ID, Col1) VALUES (1, 'One'), (2, 'Two'), (3, 'Three'); SELECT * FROM SampleTable; DROP TABLE SampleTable;
Agora vamos executar esta consulta em vários bancos de dados e ver o resultado.
SQL Server
MySQL
PostgreSQL
É isso. Esta era realmente uma pergunta muito interessante. Só para você saber alternativamente você também pode construir o SQL Script com a ajuda do UNION. No entanto, a solução demonstrada nesta consulta é o novo caminho a percorrer.