web-dev-qa-db-fra.com

copier des tables avec des données dans une autre base de données dans SQL Server 2008

Je dois copier les tables avec les données d’une base de données à une autre using Query . Je sais comment copier des tables avec des données dans une base de données. Mais je ne savais pas trop comment faire de même pour la copie entre deux bases de données.

Je dois copier un très grand nombre de tables, alors il me faut une méthode rapide utilisant une requête ...

Quelqu'un s'il vous plaît aider ... Merci d'avance ...

10
prabu R

Vous pouvez utiliser la même méthode pour copier les tables dans une base de données, le SELECT INTO , mais utiliser un nom complet de table, database.schema.object_name, à la place:

USE TheOtherDB;

SELECT *
INTO NewTable
FROM TheFirstDB.Schemaname.OldTable

Cela créera une nouvelle table Newtable dans la base de données TheOtherDB à partir de la table OldTable qui appartient à la base de donnéesTheFirstDB

20
Mahmoud Gamal
  1. Faites un clic droit sur la base de données, sélectionnez des tâches et cliquez sur Générer des scripts.
  2. Dans la fenêtre contextuelle résultante, choisissez les options requises (cliquez sur Options avancées), pour supprimer et créer un tableau, supprimer si existant, etc. 
  3. Faites défiler la liste et choisissez "Schéma et données" ou "Données uniquement" ou "Types de données dans un script (2008 R2)" selon vos besoins.
  4. Enregistrez dans un fichier et exécutez-le sur la base de données de destination.

Avantages - 

  • Peut être exécuté sur la base de données de destination, même s'il se trouve sur un autre serveur/instance
  • Script rapidement plusieurs tables, avec les données nécessaires

Avertissement - Le script peut prendre un certain temps si les tables contiennent une grande quantité de données.

Rajan

12
Raj

Ci-dessous, SQL Query copiera le schéma et les données de la table SQL Server d'une base de données à une autre. Vous pouvez toujours nommer la table (SampleTable) dans votre base de données de destination.

SELECT * INTO DestinationDB.dbo.SampleTable FROM SourceDB.dbo.SampleTable
1
Praveen Mitta
INSERT INTO DB2.dbo.MyOtherTable (Col0, Col1)
SELECT Col0, Col1 FROM DB1.dbo.MyTable

Les deux colonnes de la table doivent avoir les mêmes types de données.

1
Adeel Ahmed