5 votes

sql server : perte de la colonne d'identité lors de l'exportation/importation

J'ai récemment commencé à m'occuper de SQL Server, mon expérience précédente étant dans MS-Access.

Lorsque je fais un import/export d'une base de données, du serveur vers mon ordinateur ou même dans le serveur, toutes les colonnes avec une clé primaire perdent la clé. Identity est réglé sur false et even bit n'est pas réglé sur la valeur par défaut.

Comment puis-je utiliser une tâche d'importation/exportation pour faire une copie exacte de la base de données et de ses données ? Je ne veux pas avoir à effectuer une sauvegarde et une restauration chaque fois que je veux utiliser la même base de données ailleurs, pour un autre projet, etc.

J'ai lu des articles sur la "modification du mappage" et la case à cocher mais cela n'a pas aidé à la spécification de l'identité... et qu'en est-il de la clé primaire des tables et du reste des choses ?

4voto

BornToCode Points 252

Si vous voulez (ou devez) éviter la sauvegarde/restauration, voici ce que je recommanderais (ces étapes supposent que vous ne voulez pas maintenir l'ancien schéma NOM, juste la structure) -

Télécharger opendbdiff . Choisissez "Comparer" entre la source et la destination (vide). Choisissez 'sync'. script tab et copier uniquement les lignes de la table de création (sans les tables dbo.sysdiagrammes etc.) coller dans sql managment studio nouvelle requête, supprimer tous les noms de schémas apparaissant avant les noms de tables.

Vous avez maintenant la structure complète, y compris les clés primaires, l'identité, etc. Prochaine étape - utilisez l'importation et l'exportation de données par le serveur SQL comme vous l'avez fait auparavant (assurez-vous que vous choisissez de modifier les mappings et de choisir le schéma de destination comme dbo, etc.) Assurez-vous également de cocher la case "déposer et recréer la table de destination".

3voto

Frew Points 3903

Si vous utilisez Comparaison de données SQL vos colonnes d'identité seront maintenues.

C'est vraiment la meilleure façon de synchroniser parfaitement les bases de données et elle est fortement recommandée par les fondateurs de Stackoverflow.

C'est généralement une bataille perdue d'avance que d'essayer d'utiliser la fonctionnalité intégrée d'importation et d'exportation de SSMS.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X