Oi! Seja bem-vindo!
Hoje vamos aprender 5 formas de fazer INSERT no SQL Server, incluindo “como inserir em uma tabela os resultados de uma stored procedure”!
5 formas de fazer INSERT no SQL Server
Abaixo montei um script com exemplos das 5 principais formas de fazer INSERT no SQL Server. Nas versões mais atuais do a palavra “INTO” é opcional. Faça os testes na sua máquina e veja que na prática todas as sintaxes acabam gerando o mesmo resultado, tratando-se apenas de preferência pessoal por usar um ou outro comando.
Se você ainda não tem o SQL instalado, INSTALE :-). Se você está na correria e não pode instalar, consulte esse artigo (http://dba-pro.com/como-executar-comandos-sql-na-internet/) onde eu ensino como você pode simular os comandos SQL em um site da internet. Blz?
24 September FitnessWalk Trieste On the Barcola Promenade – Fitness Walk®® best time to take anavar tourist entertainer – no experience – dance & fitness – announcements caltanissetta
Tudo pronto, aqui vai o script da aula de hoje:
--------------------------------------------------------------------------- -- 5 formas de fazer INSERT no SQL Server --------------------------------------------------------------------------- ---------------------------------------------- -- Requisitos ---------------------------------------------- -- Banco de testes use master if db_id('curso') is not null drop database curso go create database curso go use curso go -- Tabela para testes create table amigos ( id_pessoa smallint, nm varchar(300) ) ---------------------------------------------- -- Método 1: Declarando colunas ---------------------------------------------- insert into amigos (id_pessoa, nm) values (1, 'Email Suarez') insert amigos (nm, id_pessoa) values ('Tranquilino Azambuja', 2) select * from amigos ---------------------------------------------- -- Método 2: Sem declarar colunas ---------------------------------------------- -- OBS: Os dados precisam estar na ordem original das colunas da tabela insert into amigos values (3, 'Ácido Etilico de Souza') insert amigos values (4, 'Rolando da Rocha') select * from amigos ---------------------------------------------- -- Método 3: Múltiplas linhas em 1 insert ---------------------------------------------- -- OBS: O SQL permite até 1000 registros por insert insert into amigos (nm, id_pessoa) values ('Esmeralda de Jesus', 5), ('Hugo Tocagaita', 6) select * from amigos ------------------------------------- -- Método 4: Insert / Select ------------------------------------- -- Segunda tabela de testes create table amigos_sorteados (id smallint, nm varchar(300)) -- Insert/Select insert into amigos_sorteados (id, nm) select top 2 * from amigos order by newid() select * from amigos select * from amigos_sorteados go ------------------------------------- -- Método 5: Insert / Execute ------------------------------------- -- Proc de testes create procedure pSorteiaAmigos as select top 2 * from amigos order by newid() go -- Limpa a tabela de amigos sorteados delete amigos_sorteados -- Insert/exec insert into amigos_sorteados execute pSorteiaAmigos select * from amigos_sorteadosCONCLUSÃO
Como você pode ver, o que muda em relação a sintaxe é apenas questão de preferência. Se você estiver trabalhando com outros bancos de dados ou SQLs em versões antes a 2008 a palavra INTO é obrigatória, blz?
Espero que tenha gostado do artigo, nos vemos no próximo!
Abraço do seu amigo Josué