Bases de Datos > SQL Server

 Actualizar Campos

(1/1)

excellion:
Hola!. Tengo un problema con el update. Me da un fallo en el FROM y no se si se puede usar el FROM sin un SELECT. Lo que quiero es que se actualice la fecha de devolucion de este determinado libro escrito por este autor.
Seguramente no debe ser muy dificil, pero no veo la manera de hacerlo.


UPDATE Prestecs SET DataDevolucio=#19/10/2004#
FROM Llibres,Prestecs,AutorsLlibres,Autors
WHERE Prestecs.CodiLlibre = Llibres.Codi
AND Titol="El Lenguaje de Programación en C++"
AND Llibres.Codi=AutorsLlibres.CodiLlibre
AND AutorsLlibres.CodiAutor= Autors.Codi
AND Autors.Nom="Xavier Torres";


Muchas gracias!!.  :huh:

RadicalEd:
HOLA SEGUN TENGO ENTENDIDO CUANDO ACTUALIZAS UN DB NO NECESITAS COLOCAR EL FROM SOLAMENTE PONES:

--- Código: Text --- UPDATE Prestecs //Esta debe ser la tablaSET DataDevolucio=#19/10/2004# //la fecha mejor en comilla simpleFROM Llibres,Prestecs,AutorsLlibres,Autors //Esto te sobraWHERE Prestecs.CodiLlibre = Llibres.Codi AND Titol="El Lenguaje de Programación en C++"AND Llibres.Codi=AutorsLlibres.CodiLlibreAND AutorsLlibres.CodiAutor= Autors.CodiAND Autors.Nom="Xavier Torres";//EL RESTO IGUAL  OJALA TE SIRVA
CHAO

JuanK:
tu cosigo esta mal, tal como lo ice radical ED...

supongo que lo que quieres hacer es hacer update solo cuando se cumplan algunas condiciones especificas , que estan relacionadas con  los valores de otras tablas, seria conveniente de que postearas tu modelo E/R para poderte ayudar mejor.

<!--sql--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>SQL </td></tr><tr><td id='CODE'><!--sql1-->[color=blue;font-weight]UPDATE[/color] Prestecs
SET DataDevolucio=#19/10/2004#
WHERE Prestecs.CodiLlibre =
    ([color=blue;font-weight]SELECT[/color] Llibres.Codi FROM Llibres WHERE . .. ) AND Titol='El Lenguaje de Programación en C++' AND Llibres.Codi=
    ([color=blue;font-weight]SELECT[/color] AutorsLlibres.CodiLlibre FROM AutorsLlibres WHERE...) AND AutorsLlibres.CodiAutor=
    ([color=blue;font-weight]SELECT[/color] Autors.Codi FROM Autors WHERE ... ) AND Autors.Nom="Xavier Torres";
<!--sql2--></td></tr></table><div class='postcolor'><!--sql3-->

jbermudez:
Hola .. como estas  en sql server si se puede utilizar un from  de hecho si lo pones no puedes hacer un where, me parece que el error en tu query es que le faltan comillas simples al valor que estas asignado por eso el error lo da en el from, porque no puede entender el SET estonces deberia ser algo asi como set = '  tu valor.  '

espero te sirva

Navegación

[0] Índice de Mensajes

Ir a la versión completa