Tengo una tabla ABC en una base de datos DB. Quiero crear copias de ABC con los nombres ABC_1, ABC_2, ABC_3 en la misma base de datos. ¿Cómo puedo hacer eso usando Management Studio (preferiblemente) o consultas SQL?
Esto es para SQL Server 2008 R2.
sql
sql-server-2008
tsql
sql-server-2008-r2
aprendiz de secuela
fuente
fuente
Respuestas:
Utilizar
SELECT ... INTO
:Esto creará una nueva tabla
ABC_1
que tiene la misma estructura de columnasABC
y contiene los mismos datos. Sin embargo, las restricciones (por ejemplo, claves, valores predeterminados) no se copian.Puede ejecutar esta consulta varias veces con un nombre de tabla diferente cada vez.
Si no necesita copiar los datos, solo para crear una nueva tabla vacía con la misma estructura de columna, agregue una
WHERE
cláusula con una expresión falsa:fuente
SELECT TOP(0) *
más limpio que elWHERE
método de declaración siempre falsaCopiar esquema (generar DDL) a través de la interfaz de usuario de SSMS
En SSMS, expanda su base de datos en el Explorador de objetos , vaya a Tablas , haga clic con el botón derecho en la tabla que le interese y seleccione Script Table As , Create To , New Query Editor Window . Haga una búsqueda y reemplace ( CTRL + H ) para cambiar el nombre de la tabla (es decir, coloque
ABC
en el campo Buscar qué yABC_1
en Reemplazar con luego haga clic en Aceptar ).Copiar esquema a través de T-SQL
Las otras respuestas que muestran cómo hacer esto mediante SQL también funcionan bien, pero la diferencia con este método es que también obtendrá índices, restricciones y activadores.
Copiar datos
Si desea incluir datos, después de crear esta tabla, ejecute el siguiente script para copiar todos los datos de ABC (manteniendo los mismos valores de ID si tiene un campo de identidad):
fuente
IDENTITY_INSERT
en ON para permitir establecer la columna de identidad "manualmente", mezcló el orden en su ejemplo. Además, debe hacer una lista EXPLÍCITA de sus columnasSi desea duplicar la tabla con todas sus restricciones y claves, siga los siguientes pasos:
Luego, para copiar los datos, ejecute este script a continuación:
fuente
Primera opción
2da opción: use SSIS, es decir, haga clic con el botón derecho en la base de datos en el explorador de objetos> todas las tareas> exportar datos
fuente
Esta es otra opción:
fuente
use sql server manegement studio o netcat y será más fácil manipular sql
fuente
Necesita escribir SSIS para copiar la tabla y sus datos, restricciones y disparadores. Tenemos en nuestra organización un software llamado Kal Admin de kalrom Systems que tiene una versión gratuita para descargar (creo que la función de copiar tablas es opcional)
fuente