Comment créer une table en double avec uniquement la structure dupliquée avec un nouveau nom dans SQL Server 2008?
J'ai une table avec 45 champs donc je veux en créer une nouvelle avec la même structure mais un nouveau nom.
Faites un clic droit sur la table dans SQL Management Studio.
Sélectionnez Script ... Créer pour ... Nouvelle fenêtre de requête.
Cela générera un script pour recréer la table dans une nouvelle fenêtre de requête.
Changez le nom de la table dans le script pour choisir le nom de la nouvelle table.
Exécutez le script.
SELECT *
INTO target
FROM source
WHERE 1 = 2
Ici, je vais vous montrer 2 implémentations différentes:
Premier:
Si vous avez juste besoin de créer une table en double, lancez simplement la commande:
SELECT top 0 * INTO [dbo].[DuplicateTable]
FROM [dbo].[MainTable]
Bien sûr, ça ne marche pas complètement. les contraintes ne sont pas copiées, pas plus que les clés primaires ou les valeurs par défaut. La commande crée uniquement une nouvelle table avec la même structure de colonnes et si vous souhaitez insérer des données dans la nouvelle table.
Deuxième (recommandé):
Mais si vous voulez dupliquer la table avec toutes ses contraintes et ses clés, suivez les étapes ci-dessous:
Pour créer une nouvelle table à partir d'une table existante
SELECT * INTO New_table FROM Old_Table
Pour insérer des données d'une table, une autre table
Insérer dans Table_Name2 sélectionner top 1 * from Table_Name1
SELECT * INTO newtable FROM oldtable where 1=2
where 1=2, this statement is use when only Copy complete structure of a
table in sql without Copying data of table
SELECT * INTO newtable FROM oldtable
create table with data you can use this statement