Inicio Soporte Técnico SQL – Actualizar datos de una tabla a otra en base a...

SQL – Actualizar datos de una tabla a otra en base a un campo

3638
0

Query SQL para actualizar columnas de una tabla con datos de otra que se encuentra en distinta base de datos; Podemos realizar esto creando una tabla temporal en el destino con la información y realizar el update en base a esta.

Querys a utilizar

Query para realizar la copia a la tabla temporal

SELECT * INTO BDDestino.dbo.NombreTablaTemporal FROM BDFuente.dbo.TablaOrigen

Mas Información: Ver SQL – Copiar esquema de tabla y datos de una base de datos a otra

Query para actualizar

UPDATE TablaDestino 
SET TablaDestino.Columna1 = TablaOrigen.Columna1, 
TablaDestino.Columna2 = TablaOrigen.Columna2,
TablaDestino.Columna3 = TablaOrigen.Columna3,
... etc ...
FROM TablaOrigen, TablaDestino 
WHERE TablaOrigen.Campo = TablaDestino.Campo

Ejemplo:

Tengo dos bases de datos, el cual vamos a copiar la tabla completa a la base de datos destino.

Copiando

SELECT * INTO DarV2016.dbo.VT_ClientesTemp FROM DarV2010.dbo.VT_Clientes

Actualizando

Una vez terminado el proceso de copiado, actualizamos la informacion con el siguiente query.

Update VT_Clientes
SET VT_Clientes.Nombre = VT_ClientesTemp.Nombre,
VT_Clientes.Calle = VT_ClientesTemp.Calle,
VT_Clientes.NumeroInterior = VT_ClientesTemp.NumeroInterior,
VT_Clientes.NumeroExterior = VT_ClientesTemp.NumeroExterior,
VT_Clientes.Ciudad = VT_ClientesTemp.Ciudad,
VT_Clientes.CP = VT_ClientesTemp.CP,
VT_Clientes.Estado = VT_ClientesTemp.Estado,
VT_Clientes.Pais = VT_ClientesTemp.Pais,
VT_Clientes.Entidad = VT_ClientesTemp.Entidad,
VT_Clientes.RFC = VT_ClientesTemp.RFC,
VT_Clientes.CURP = VT_ClientesTemp.CURP,
VT_Clientes.PWD = VT_ClientesTemp.PWD,
VT_Clientes.Colonia = VT_ClientesTemp.Colonia,
VT_Clientes.ColoniaSagar = VT_ClientesTemp.ColoniaSagar,
VT_Clientes.EstadoSagar = VT_ClientesTemp.EstadoSagar,
VT_Clientes.Municipio = VT_ClientesTemp.Municipio,
VT_Clientes.AvisarTLC = VT_ClientesTemp.AvisarTLC,
From VT_Clientes, VT_ClientesTemp
Where VT_Clientes.Numero = VT_ClientesTemp.Numero

 

Te recomendamos  Windows RDP - Error: The system cannot find the file specified...