Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lisa

erro no insert

Recommended Posts

Seguinte: tenho 2 tabelas com os seguintes nomes?Iptablecont - autoa - intb - intc - intd - intdescr - nvarcharIptable2a - intb - intc - intd - intdescr - nvarcharquero passar os dados da segunda para a primeira.. abrir o query analyzer e tentei isso:INSERT INTO iptable (a,b,c,d, descr) values ('select * from iptable2')Mas da erro.... o que passa???segue o erro:Server: Msg 109, Level 15, State 1, Line 1There are more columns in the INSERT statement than values specified in the VALUES clause. The number of values in the VALUES clause must match the number of columns specified in the INSERT statement.

Compartilhar este post


Link para o post
Compartilhar em outros sites

oi Lisa,

- não é necessário o values qdo. se faz insert com select e nem os '' entre o select, senão o sql vai pensar q tudo isso é um string

 

- uma dica: troque o select * por um select com os nomes dos campos, pois select * não é uma boa prática, imagine q esse script será executado com alguma frequencia e em certo momento seja necessario inserir um campo na tabela iptable2, o insert vai gerar um erro...

 

DE:

INSERT INTO iptable (a,b,c,d, descr) values ('select * from iptable2')

PARA:

INSERT INTO iptable (a,b,c,d, descr) select a,b,c,d, descr from iptable2

falows

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.