Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

actualizar campos de varias tablas

Estas en el tema de actualizar campos de varias tablas en el foro de SQL Server en Foros del Web. Saludos a todos quisiera que me ayuden con algo que la verdad no he podido solucionar, lo que deseo es lo siguiente quiero actualizar los ...
  #1 (permalink)  
Antiguo 17/11/2006, 08:47
 
Fecha de Ingreso: agosto-2005
Ubicación: Quito, Ecuador
Mensajes: 255
Antigüedad: 18 años, 8 meses
Puntos: 0
actualizar campos de varias tablas

Saludos a todos quisiera que me ayuden con algo que la verdad no he podido solucionar, lo que deseo es lo siguiente quiero actualizar los campos que responden a esta consulta por ejemplo

select p.cd_poliza ,fe_pago,valor,saldo,nro_pago
from poliza p, forma_pago fp
where
p.cd_poliza = fp.cd_poliza and
cd_cliente='41'


esta sentencia me da un numero determinado de registros como resultado, lo que deseo hacer es solamente a estos registros aplicar la actualización que es
update forma_pago set valor=1

obiamente quisiera saber si se lo puede hacer con una instruccion sql o si necesito obligatoriamente utilizar algun lenguaje para primero hacer la consulta y a ese resultado aplicar la actualización. Gracias por su ayuda.
  #2 (permalink)  
Antiguo 17/11/2006, 14:51
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
update fp
set fp.forma_pago set valor=1
from poliza p INNER JOIN forma_pago fp
ON p.cd_poliza = fp.cd_poliza
WHERE
cd_cliente='41'

Procura no usar la anacrónica sintaxis de cross joins y reemplazala por los INNER JOINs. Facilita la legibilidad y asegura la compatibilidad a futuro.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #3 (permalink)  
Antiguo 24/11/2006, 08:50
 
Fecha de Ingreso: noviembre-2006
Mensajes: 1
Antigüedad: 17 años, 5 meses
Puntos: 0
Hola
perdoname Mithrandir, pero una sentencia como la que dices,
"update fp
set fp.forma_pago set valor=1
from poliza p INNER JOIN forma_pago fp
ON p.cd_poliza = fp.cd_poliza
WHERE cd_cliente='41'"
no puede funcionar jamas. la sintaxis es incorrecta, repasa los manuales SQL antes de contestar.
  #4 (permalink)  
Antiguo 24/11/2006, 09:28
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Que tal.

La sintaxis de tu sentecia quedaría asi:

update forma_pago set valor=1
from forma_pago fp INNER JOIN poliza p
ON fp.cd_poliza = p.cd_poliza
WHERE
cd_cliente='41'



Saludos
  #5 (permalink)  
Antiguo 26/11/2006, 13:21
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Cita:
Iniciado por Panikin Ver Mensaje
Hola
perdoname Mithrandir, pero una sentencia como la que dices,
"update fp
set fp.forma_pago set valor=1
from poliza p INNER JOIN forma_pago fp
ON p.cd_poliza = fp.cd_poliza
WHERE cd_cliente='41'"
no puede funcionar jamas. la sintaxis es incorrecta, repasa los manuales SQL antes de contestar.
LOL, como dicen en mi pueblo "limosnero y con garrote".

Es más sencillo si indicas que no funciona y buscamos la manera de hacerlo funcionar. La práctica totalidad de mis respuestas implican código al vuelo, no perderé tiempo corriendo sentencias de otros en mis servidores.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:35.