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

actualizar registros de una tabla a otra

Estas en el tema de actualizar registros de una tabla a otra en el foro de SQL Server en Foros del Web. Hola un saludo desde México: Pues la razón por la cual escribo este tema es para pedir ayuda: Despues de varios intentos de actualizar una ...
  #1 (permalink)  
Antiguo 23/01/2008, 17:28
 
Fecha de Ingreso: enero-2008
Mensajes: 7
Antigüedad: 17 años
Puntos: 0
actualizar registros de una tabla a otra

Hola un saludo desde México:

Pues la razón por la cual escribo este tema es para pedir ayuda:

Despues de varios intentos de actualizar una tabla co los datos de otra tabla q ya fue modificada me eh desesperado llebo 4 dias y pues aun no puedo hacer lo q necesito ojalá alguien me pudiera ayudar de antemano grax.

Tengo 2 tablas Tabla1 y Tabla2
en Tabla1 uno tengo A, B, C como campos y en la Tabla2 tengo A,B,C,D todos los campos son del mismo tipo de datos.

Lo q quiero hacer esq s modifico los registros de A,B,C de la tabla1 me actualize los mismos registros de la tabla2.

es decir; si en la tabla1 en el campo A tengo el registro (23 o cualquiercosa) por logica en el campo A de la tabla 2 tb tengo el regstro (23 o cualquiercosa) pero si llegara a cambiar el registro del campo A de la tabla 1 a (25 u otracosa) que se actualize el registro dell campo A de la tabla2.

grax y espero q alguien me ayude.
  #2 (permalink)  
Antiguo 23/01/2008, 18:01
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Re: actualizar registros de una tabla a otra

Hola paisano

¿Que columna(s) UNE a ambas tablas?
  #3 (permalink)  
Antiguo 23/01/2008, 18:15
 
Fecha de Ingreso: enero-2008
Mensajes: 7
Antigüedad: 17 años
Puntos: 0
Re: actualizar registros de una tabla a otra

hola psss la columna C
  #4 (permalink)  
Antiguo 23/01/2008, 18:22
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Re: actualizar registros de una tabla a otra

Entonces, debes crear un TRIGGER en tu tabla1 de FOR UPDATE y hacer lo siguiente

CREATE TRIGGER trg_Tabla1_Update
FOR UPDATE
AS
BEGIN
UPDATE Tabla2 SET A = UPDATED.A, B=UPDATED.B
FROM Tabla2 JOIN UPDATED
ON Tabla2.C = UPDATED.C
END
  #5 (permalink)  
Antiguo 23/01/2008, 18:50
 
Fecha de Ingreso: enero-2008
Mensajes: 7
Antigüedad: 17 años
Puntos: 0
Re: actualizar registros de una tabla a otra

hola grax por la ayuda y paciencia hice lo q me dijiste y q crees me aparece un msj de error q dice: el nombre del objeto updated no es valido esto fue lo q probé

CREATE TRIGGER Actualizar1
ON Tabla1
FOR UPDATE
AS
BEGIN
UPDATE Tabla2 SET A = UPDATED.A, B = UPDATED.B
FROM Tabla2 JOIN UPDATED
ON Tabla2.C = UPDATED.C
END
  #6 (permalink)  
Antiguo 23/01/2008, 18:53
 
Fecha de Ingreso: enero-2008
Mensajes: 7
Antigüedad: 17 años
Puntos: 0
Re: actualizar registros de una tabla a otra

ah! olvidé decir q es para la versión de SQLServer 2000
  #7 (permalink)  
Antiguo 23/01/2008, 19:14
Avatar de Beakdan  
Fecha de Ingreso: diciembre-2001
Ubicación: Monterrey, Nuevo León
Mensajes: 433
Antigüedad: 23 años
Puntos: 7
Re: actualizar registros de una tabla a otra

Creo haberte entendido, y creo que lo que solicitas no es posible a menos que tengas otra manera de identificar los registros.
Es decir, si 1.A ya no tiene 23 sino 25 no hay manera de encontrar en 2.A los registros que eran 23 basándose en los valores ahora existentes en 1

Quizás ambas tablas deberían tener un campo identity para así poder identificarlos.

Pssss.... Me tardé mucho en responder y ya habían dado respuestas jajaja...
  #8 (permalink)  
Antiguo 23/01/2008, 19:28
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 17 años, 5 meses
Puntos: 180
Re: actualizar registros de una tabla a otra

Si, es para la version 2000, solo que como bien dice Beakdan, se SUPONE que el campo C, es tu PRIMARY KEY y que no sufre modificacion alguna, de lo contrario, tendrias que hacer un trigger INSTEAD OF
  #9 (permalink)  
Antiguo 24/01/2008, 16:51
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 8 meses
Puntos: 25
Re: actualizar registros de una tabla a otra

A menos que estés planteando una bitácora para temas de auditoría te puedo decir que lo que buscas es un parche para un mal diseño de la DB pues no está normalizada.

Si es el segundo caso creeme que ahorrarás más tiempo normalizando que aplicando parches que corrijan la integridad de los datos.
__________________
"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 00:30.