none
DUVIDA COM UPDATE RRS feed

  • Pergunta

  • GALERA É POSSIVEL GERAR UM UPDATE COM INNER JOIN NO SQL SERVER 2005, SE POSSIVEL POR FAVOR ME AJUDEM, SEGUE ABAIXO CODIGO QUE TENTEI APLICAR.

     

     

     

    UPDATE COLABORADOR INNER JOIN EMAIL

    ON

    COLABORADOR.CODCOLABORADOR  = EMAIL.CODCOLABORADOR

    SET

    COLABORADOR.CODCOLABORADOR = '33' ,COLABORADOR.NOME = 'RUFINO' ,COLABORADOR.SETOR = 'ADM',COLABORADOR.TELEFONE = '4088885555',EMAIL.CODCOLABORADOR = '33',EMAIL.EMAIL = 'TESTE@TESTE.COM'

    WHERE

    COLABORADOR.CODCOLABORADOR = '01'

     

     

    GRATO.

    LUIS.

    sexta-feira, 11 de abril de 2008 20:58

Todas as Respostas

  • Boa Tarde,

     

    É possível fazer um UPDATE com um INNER JOIN. Isso é utilizado para atualizar dados de uma tabela com base em outra tabela. No entanto, a premissa é que o UPDATE possa atualizar uma tabela por vez. Em sua instrução de UPDATE você está querendo atualizar duas tabelas com uma única instrução. Isso não é possível de ser feito no SQL Server. Você terá que construir um UPDATE para cada tabela.

     

    [ ]s,

     

    Gustavo

     

    sexta-feira, 11 de abril de 2008 21:06
  • Boa Tarde,

     

    Apenas como sugestão, verifique se as seguintes instruções de UPDATE o atendem

     

    Code Snippet

    UPDATE COLABORADOR SET

    CODCOLABORADOR = '33',

    NOME = 'RUFINO',

    SETOR = 'ADM',

    TELEFONE = '4088885555'

    WHERE

    CODCOLABORADOR = '01' AND

    CODCOLABORADOR IN (SELECT CODCOLABORADOR FROM EMAIL)

     

     

    UPDATE EMAIL SET

    CODCOLABORADOR = '33',

    EMAIL = 'TESTE@TESTE.COM'

    WHERE

    CODCOLABORADOR IN (SELECT CODCOLABORADOR FROM COLABORADOR AND CODCOLABORADOR = '01')

     

 

[ ]s,

 

Gustavo

sexta-feira, 11 de abril de 2008 21:11
  • Olá Gustavo tudo bem,

    Primeiramente gostaria de agradecer a ajuda, é o seguinte cara coloquei o código que vc me passou no meu sql server 2005 e ele me retornou o seguinte erro:

     

    Msg 156, Level 15, State 1, Line 29

    Incorrect syntax near the keyword 'AND'.

     

     

    Pode me ajudar?

     

     

    Valew

    Luis.

    terça-feira, 15 de abril de 2008 14:35
  • Ola Luis,

     

    Segue o código correto

     

    Code Snippet

    UPDATE EMAIL SET

    CODCOLABORADOR = '33',

    EMAIL = 'TESTE@TESTE.COM'

    WHERE

    CODCOLABORADOR IN (SELECT CODCOLABORADOR FROM COLABORADOR WHERE CODCOLABORADOR = '01')

     

     

    [ ]s,

     

    Gustavo

     

    terça-feira, 15 de abril de 2008 14:43