Beruflich Dokumente
Kultur Dokumente
SQLShack
English
SQL Server ofrece muchos métodos que pueden ser usados para realizar el
proceso de copia de esquema y datos. Para ir a través de cada uno de estos
métodos, consideraremos el siguiente escenario:
Las tablas que serán copiadas desde la base de datos fuente a la de destino
son: Department, Employee, EmployeeDepartmentHistory y
EmployeePayHistory bajo el esquema HumanResources.
datos destino.
Otro método que puede ser usado para copiar tablas de la base de datos
fuente a la de destino es el asistente de Exportación e Importación de SQL
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 2/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
Server, el cual está disponible en SQL Server Management Studio. Usted tiene
la opción de exportar desde la base de datos fuente o importar desde la de
destino para transferir los datos.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 3/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 4/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 5/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
10. Una vez que la ejecución es completada exitosamente, usted puede ver
los pasos que se siguieron para migrar las tablas y el número de
registros transferidos. Revise los pasos y los mensajes, si no hay errores
haga clic en Close.
Este método es una forma rápida de copiar tablas desde la base de datos
fuente a la de destino si usted desea copiar las tablas sin preocuparse de las
relaciones de las tablas y los órdenes.
Usando este método, los índices de las tablas y claves no serán transferidos. Si
usted está interesado en copiarlos, usted necesita generar scripts para estos
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 6/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
p , g p p
objetos de la base de datos.
Si estas son Claves Foráneas conectando estas tablas, usted necesita exportar
los datos en el orden correcto, de otra manera, el asistente de exportación
fallará.
SQL Server provee otra manera de generar un script para las bases de datos
SQL Server con sus objetos y datos. Este script puede ser usado para copiar el
esquema de las tablas y datos desde la base de datos fuente a la de destino en
nuestro caso.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 7/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
El método de SQL Scripting es útil para generar un solo script para el esquema
de las tablas y los datos, incluyendo los índices y las claves. Pero de nuevo, este
método no genera el script de creación de las tablas en el orden correcto si
hay relaciones entre las tablas.
ApexSQL Diff es una herramienta SQL útil que puede ser usada para encontrar
las diferencias entre las bases de datos desde el lado del esquema y generar un
script de sincronización para crear estas tablas en la base de datos destino en
el orden correcto.
ApexSQL Data Diff también es otra herramienta SQL que puede ser usada para
encontrar las diferencias entre las bases de datos desde el lado de los datos y
generar un script de sincronización para insertar los datos en las tablas de la
base de datos destino, tomando en consideración las columnas IDENTITY.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 10/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
Podemos tomar beneficios de estas dos herramientas juntas para generar los
scripts requeridos para crear las tablas a ser copiadas con sus objetos, y copiar
los datos desde las tablas fuente a las de destino.
Una nueva ventana será mostrada, que contiene los objetos que son
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 11/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
comunes entre las dos bases de datos y los objetos existen en una de las
bases de datos pero no existen en la segunda.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 12/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 13/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
Ahora el script para crear las tablas de la base de datos con sus objetos
es generado con el orden correcto. Usted puede simplemente correr
este script en la base de datos destino para crear las tablas.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 14/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
Una nueva ventana será mostrada, que contiene las diferencias de datos
entre las tablas en las bases de datos fuente y destino en adición a los
datos idénticos y no comparables.
Aquí estamos interesados en las diferencias entre las tablas en las bases
de datos de fuente y destino. Como en los pasos previos, creamos estas
tablas pero aún están vacías.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 15/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 16/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
Otra herramienta útil provista por ApexSQL que puede ser usada para copiar
tablas, datos y esquema desde la base de datos fuente a la de destino es la
herramienta ApexSQL Script. Esta linda herramienta creará un script para el
esquema de las tablas de la base de datos y los datos con índices y claves de
estas tablas manejando la inserción de la columna IDENTITY.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 17/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 18/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 19/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
8. En la ventana Output file, desde la lista desplegable Action, elija create
and write to file. Luego usted tiene la opción de grabar el script a una
ruta específica o abrirlo en un editor. Elija Open script in editor y luego
haga clic en Create.
También, usted puede encontrar las sentencias INSERT para los datos de las
tablas, como sigue:
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 20/21
26/2/2019 Cómo copiar tablas de una base de datos a otra en SQL Server
ApexSQL Script es una herramienta muy útil que puede ser usada para copiar
tablas de bases de datos de una base de datos fuente a una de destino sin
ningún esfuerzo de su parte para manejar el orden de creación de las tablas.
Tampoco ninguna acción es requerida de su lado para manejar la inserción
IDENTITY.
Conclusión:
Como puede ver, múltiples métodos pueden ser usados para copiar tablas
desde la base de datos fuente a la de destino, incluyendo esquema y datos. La
mayoría de estas herramientas requieren un gran esfuerzo de su lado para
copiar los objetos de las tablas como índices y claves. También, estas
herramientas no manejarán el orden de creación para estas tablas si hay
relaciones entre ellas. Desde el lado de los datos, la mayoría de estas
herramientas necesitan pasos extra de su lado para manejar la inserción
IDENTITY. Usando la combinación de ApexSQL Diff y ApexSQL Data Diff, o
usando ApexSQL Script, con unos pocos pasos simples usted tendrá un script
completo para el esquema de las tablas y los datos sin esfuerzos extra de su
parte para manejar todo. Sólo corra estos scripts en la base de datos destino y
disfrute el resultado.
https://www.sqlshack.com/es/como-copiar-tablas-de-una-base-de-datos-otra-en-sql-server/ 21/21