Migration des tables SQL Server Express vers la database SQL Server

J'ai une database SQL Server Express locale que je veux copyr vers une database SQL Server sur un server. Je n'ai pas toutes les permissions sur le server, donc je ne peux pas l'attacher directement. Quelqu'un m'a dit que je pouvais le faire en utilisant la SqlBulkCopy [MSDN] .

Je n'arrive pas à comprendre comment l'utiliser. Je n'ai pas fait assez de programmation de database pour être familier avec la façon dont ce genre de chose est fait.

Fondamentalement, je veux copyr toutes les tables dans une database à l'autre. Il y a des relations entre les tables, je ne sais pas si cela fera une différence dans la copy ou non. Il n'y en a pas beaucoup, il ne serait donc pas très compliqué de simplement copyr datatables, puis de réaffecter manuellement les relations.

C'est aussi loin que je pouvais

 var localDatabase = new SqlConnection("connection ssortingng"); var serverDatabase = new SqlConnection("other connection ssortingng"); SomehowCopyAllTables(localDatabase, serverDatabase); 

mais malheureusement, Mr. # ne voulait pas reconnaître l'existence de la méthode SomehowCopyAllTables .

Comment puis-je copyr toutes les tables d'une database à une autre?

Utilisez la command Generate Scripts de SQL Server dans SQL Server Management Studio.

  • faites un clic droit sur la database; Tâches -> Générer des scripts
  • select vos tables, click Suivant
  • click le button Avancé
  • find les types de données à écrire – faites le choix que vous voulez: inclure des données ou non.
  • vous pouvez ensuite choisir d'save dans un file, ou mettre dans une nouvelle window de requête.
  • donne des instructions INSERT pour toutes datatables de table sélectionnées dans la puce 2.
  • Copiez / collez cette sortie dans la nouvelle window de requête sur votre server cible.

SQL Server génère des données de scripts

De mon sharepoint vue, le meilleur moyen est de créer des scripts SQL dans votre SQL Express et d'exécuter les scripts générés sur votre server. Les données complètes seront copiées.

Pour générer des scripts de database à partir de Sql Server Management Studio:

  1. Clic droit sur la database
  2. Sélectionnez Tâches -> Générer des scripts
  3. (Cliquez sur suivant si vous obtenez l'écran d'introduction)
  4. Sélectionnez "Sélectionner des objects de database spécifiques"
  5. Choisissez les objects pour générer des scripts pour (tables, procédures stockées, etc …)
  6. Cliquez sur Suivant, puis spécifiez le nom de file de sortie
  7. Cliquez sur Terminer pour générer le script

Cela générera les schémas seulement. Si vous voulez aussi faire des scripts de génération de données, click le button Avancé à l'étape 6 et faites défiler jusqu'à "Types de données à scripter" et remplacez "Schéma uniquement" par "Données uniquement" ou "Schéma et données"

Il peut être plus simple d'utiliser simplement l' inspecteur de schémas et l' inspecteur de données d' Atlantis Interactive plutôt que de le programmer vous-même. Il suffit de comparer le schéma à une database vide sur votre système actuel.