Monday, March 14, 2011

Como insertar registros De Una tabla a otra tabla

SQL SERVER

El caso más sencillo es cuando ambas tablas se encuentran dentro de la misma base de datos que pertenece a un mismo servidor.

INSERT INTO tabla_destino SELECT * FROM tabla_origen

La cantidad y tipo de datos de columnas deben coincidir tanto para la tabla origen como en la de destino (asímismo para los otros dos casos)

Ej:

INSERT INTO dbo.cfPrfl (cfEmprNcod,cfPrflNmbr) SELECT cfEmprNcod, dcPrsnNmbr FROM dcPrsn

Este es el caso medio, cuando se quiere insertar datos de una tabla a otra pero estas pertecenen a diferentes base de datos en un mismo servidor. En este caso, el usuario debe tener acceso a las dos base de datos.

INSERT INTO base_de_datos.dbo.tabla_destino SELECT * FROM base_de_datos.dbo.tabla_origen

Ej:


INSERT INTO UponERP.dbo.cfPais SELECT cfPaisNmbr FROM UponErpTestLizzy.dbo.cfPais

Y por último, este es el caso final. Cuando se desea insertar datos de una tabla a otra pero que ambas tablas están en diferentes base de datos y las cuales a su vez pertenecen a distintos servidor.

Para este caso, es necesario que el usuario tenga acceso a los dos servidores y a las dos base de datos

INSERT INTO servidor.base_de_datos.esquema.tabla_destino SELECT * FROM servidor.base_de_datos.esquema.tabla_origen

Ej:


INSERT INTO [DESARROLLO02\SQL2005].UponErpTestLizzy.dbo.cfBsAu SELECT * FROM [SRV-DB\SQL2005].UponErpTest.dbo.cfBsAu

Good Coding =)

1 comment:

  1. muy bien !! gracias, probare la del varios servidores!!

    ReplyDelete