J'ai deux bases de données avec la même structure de table.
L'un est en SQL local sur mon ordinateur et l'autre est sur Live SQL Database.
Maintenant, je veux insérer des données de table de base de données en direct dans la table de base de données locale.
Une idée?
Bien entendu, vous pouvez utiliser la fonctionnalité DATA IMPORT. Cependant, il existe un autre moyen assez simple de le faire, à condition de ne pas parler de millions de lignes.
En gros, vous exécutez une requête SELECT sur la table à partir de laquelle vous souhaitez extraire une instruction INSERT pour chaque ligne:
SELECT 'INSERT INTO MyTable
(col1, col2, col3)
VALUES (
''' + CAST(col1 AS VARCHAR(25)) + ''',
''' + CAST(col2 AS VARCHAR(25)) + ''',
''' + CAST(col3 AS VARCHAR(25)) + ''''
+ ')'
FROM MyTable
Le jeu de résultats ressemblera à ceci:
INSERT INTO MyTable (col1, col2, col3, col4) VALUES ('val1','val2','val3')
INSERT INTO MyTable (col1, col2, col3, col4) VALUES ('val1','val2','val3')
INSERT INTO MyTable (col1, col2, col3, col4) VALUES ('val1','val2','val3')
Vous pouvez également ajouter IDENTITY INSERT, bien sûr.
Donc, copiez simplement l'ensemble de résultats dans une fenêtre QUERY pour le serveur de test et exécutez-le. Je l'ai fait plusieurs fois moi-même lorsque je copie à partir de plusieurs tables.
J'ajouterai que parfois, c'est plus facile (pour des ensembles de données plus petits) que d'essayer de comprendre comment lier les serveurs.
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots