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

update 2 o + tablas relacionadas. en SQL

Estas en el tema de update 2 o + tablas relacionadas. en SQL en el foro de SQL Server en Foros del Web. Hola. bueno busque en el foro y no encontre este tema asi que lo pongo. Estoy comenzando en sql y tengo la sigueinte duda. Quiero ...
  #1 (permalink)  
Antiguo 21/02/2007, 17:05
Avatar de vrenzo  
Fecha de Ingreso: febrero-2007
Mensajes: 289
Antigüedad: 17 años, 2 meses
Puntos: 15
update 2 o + tablas relacionadas. en SQL

Hola.
bueno busque en el foro y no encontre este tema asi que lo pongo.

Estoy comenzando en sql y tengo la sigueinte duda.

Quiero actualizar 2 tablas que estan relacionadas pero como se sabe no puedo actualizar una sin que me diga:

Servidor: mensaje 547, nivel 16, estado 1, línea 1
Instrucción UPDATE en conflicto con la restricción TABLE REFERENCE 'FK__Items_documentos__186270A4'. El conflicto ha aparecido en la base de datos 'PRUEBA', tabla 'Items_documentos_de_compra_cue'.
Se terminó la instrucción.

ASi que como puedo unir estos dos update para que pueda actualizar el cod_documento de las dos tablas al mismo tiempo. (calro que si son 3 o + tablas se respeta la estructura no?)

esta es mi sintaxis pero no funciona... de hecho..

Mi tabla principal
update Documentos_de_compras set cod_documento='BP' where num_documento='002-0001808' and c_persona='000156'

Mi tabla detalle
update Items_documentos_de_compra_cue set cod_documento='BP' where num_documento='002-0001808' and c_persona='000156'


Gracias por la ayuda.
  #2 (permalink)  
Antiguo 21/02/2007, 18:02
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 6 meses
Puntos: 8
Re: update 2 o + tablas relacionadas. en SQL

Que tal vrenzo.

Supongo que esto que quieres hacer es algo muy, muy ocasional.

Lo que yo haría en este caso es eliminar las relaciones entre ambas tablas, hacer el update a ambas tablas y finalmente volver a construir las relaciones foraneas.

Otra alternativa sería "deshabilitar" que revise las llaves foraneas, pero no recuerdo como es. Así es que te sugiero quedarte con la primera opción.

Saludos!!
  #3 (permalink)  
Antiguo 21/02/2007, 19:42
 
Fecha de Ingreso: enero-2007
Mensajes: 11
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: update 2 o + tablas relacionadas. en SQL

otra cosa que puedes hacer es, abrir tu enerprise manager, ir a la base de datos sobre la que estas trabajando, buscar la tabla a la cual quieres hacer el UPDATE, das click derecho, elijes la opcion Design table, click derecho sobre la pantalla, te vas a la opcion Relationships, ahi aparece la lista de relaciones que tiene tu tabla, elije la que te impide hacer tu update, en este caso seria la que hace referencia a tu tabla detalle, y en los checkbox que aparecen abajo de la forma, elije la opcion Cascade Update Related Fields, cierras la forma, das un click en el icono de guardar en el design table y listo, cuando quieres hacer un update a la tabla maestra, se actualizara la tabla detalle.
  #4 (permalink)  
Antiguo 26/02/2007, 10:01
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años
Puntos: 25
Re: update 2 o + tablas relacionadas. en SQL

También puedes activar el ON UPDATE CASCADE para que al modificar el campo en la tabla "madre" propague la actualización a todas las tablas con FK hacia ese campo.
__________________
"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 16:29.