none
INSERT INTO - SQL 2005 RRS feed

  • Pergunta

  • Amigos...estou com um problema simples...

    Ao tentar fazer um INSERT INTO numa tabela do SQL 2005 com SP4, obtenho o seguinte erro:

    Msg 102, Level 15, State 1, Line 2

    Incorrect syntax near ','.

    Executo um teste simples:

    INSERT INTO ED (id,nome,idade)
    values (1,'EDGAR',NULL),
    (2,'RODRIGO',NULL),
    (3,'TESTE',NULL);

    Como proceder??


    Rombesso

    sexta-feira, 24 de abril de 2015 14:28

Respostas

Todas as Respostas

  • Simplesmente nao existe esse tipo de estrutura no SQL 2005 (à partir do 2008 é possivel). O que vc esta fazendo é tentar inserir multiplas linha em um unico comando.

    A sintaxe correta é

    INSERT INTO ED (id,nome,idade) values (1,'EDGAR',NULL);
    INSERT INTO ED (id,nome,idade) values (2,'RODRIGO',NULL);
    INSERT INTO ED (id,nome,idade) values (3,'TESTE',NULL);

    Porem voce poderia fazer isso:

    INSERT INTO ED (id,nome,idade)  
    select id,nome,idade from
    (Select 1 as id,'EDGAR' as nome,NULL as idade
    union
    Select 2 as id,'RODRIGO' as nome,NULL as idade
    union
    Select 3 as id,'TESTE' as nome,NULL as idade)t;
    o que eu nao acho muito pratico

    att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------




    sexta-feira, 24 de abril de 2015 14:39
  • Bom dia..

    Cara tenta fazer um insert de uma só linha. To achando q é a virgula que separa cada linha que vc a inserindo. E tenta separar cada linha com ponto e virgula.

    INSERT INTO ED (id,nome,idade)
    values (1,'EDGAR',NULL);
    (2,'RODRIGO',NULL);
    (3,'TESTE',NULL)

    sexta-feira, 24 de abril de 2015 14:42
  • Deleted
    • Marcado como Resposta Edgar Rombesso sexta-feira, 24 de abril de 2015 18:05
    sexta-feira, 24 de abril de 2015 14:47
  • Vlw Galera...utilizei a opção do William e do José...resolvido...

    Rombesso

    sexta-feira, 24 de abril de 2015 18:05