Copie et génération des scripts d'une base de données Microsoft SQL Server
Date de publication : 4.7.2008
Par
Poulain
Ce tutoriel va vous expliquer comment créer le script de votre base de données, pour en faire une copie exact.
I. Présentation
II. Création du script du contenu de votre base de données
III. Création d'un script de création de votre base de données
IV. Création du script final
V. Conclusion
I. Présentation
Le principe de ce tutoriel est de permettre la copie d'une base de données et de son contenu, par l'intermédiaire
d'un script SQL, ce qui vous permettra de balader votre base de données partout avec vous et de pouvoir
l'intégrer à un serveur facilement.
Cette méthodologie est tirée de la phase de matérialisation d'une base de données MS-SQL lors d'une mise en réplication.
La création du script d'une base de données, est gérée par des produits payant, mais nous pouvons faire
la même chose avec des produits gratuits.
Pour cela, nous aurons besoin des outils:
-
Microsoft SQL Server Express
-
SQL Server Management Studio Express (SSMSE)
-
Microsoft SQL Server Database Publishing Wizard (MSSDPW)
II. Création du script du contenu de votre base de données
Le script de contenu correspond à tout ce que contient votre base de données, tous les enregistrements.
Nous allons le créer avec MSSDPW.
Pour commencer, lancez MSSDPW, cliquez sur Next.
Là, vous devez entrer le nom de votre serveur. Par défaut le nom est "localhost", laissez comme ceci
si vous avez une instance pas défaut, sinon, vous tapez : "localhost\nomdelinstance"
Sélectionnez le mode d'identification que vous utilisez, et entrez les données requises si besoin.
Cliquez sur "Next".
Là vous avez la page de sélection de la base de données, Sélectionnez la votre.
Cliquez sur "Next".
La page de sortie du script s'affiche, Sélectionnez la sortie fichier, sélectionnez le chemin de
sortie, mettez comme nom celui de votre fichier final.
Et là, très important, mettez "Supprimez les objets existants du script" à False. Laissez le reste
par défaut.
Cliquez sur "Next", vérifiez les options.
Cliquez sur "Finish".
III. Création d'un script de création de votre base de données
Pour l'instant, nous avons le script de la base de données et son contenu, mais pas le script de création
de la base.
Nous allons donc le créer grâce à SSMSE.
Pour commencer, ouvrez SSMSE, une page de connexion s'ouvre, connectez vous au serveur.
Une foi connecté, il faut dérouler "Database", puis clique droit sur votre base de données.
Là, vous faites "Tasks" et cliquez sur "Generate script...".
Là, une fenêtre s'ouvre, avec un message de bienvenue, cliquez sur "Next".
Sélectionnez votre base de données et cochez la case "Script all objects in the selected base" et
cliquez sur "Next"
Dans cette nouvelle fenêtre, mettez tout à False, sauf: "include if NOT EXIST" que vous mettez à
True, "Script Database Create" que vous mettez à True et "Script Owner" que vous mettez à True
Cliquez sur "Next"
Là, vous arrivez sur une page de choix de la destination de sortie du script.
Je vous conseil de choisir "Script to file", de choisir le même chemin de sortie que pour le script
du contenu de la base de données, laissez en Unicode, appelez-le "bddcreate.sql".
Cliquez sur "Finish>>|" ou "Next", vérifiez que vos choix sont bons, et cliquez sur "Finish"
Le programme crée le script.
IV. Création du script final
Pour l'instant, nous avons deux scripts, un pour la création du contenu de la base, l'autre pour la création
de la base de données.
Pour réunir les deux, la manipulation est très simple.
Ouvrez "bddcreate.sql" puis sélectionnez le code de "Use [Master]" à "Use [nomdevotrebdd]"
Copier le tout avec un simple ctrl+C
Ouvrez le premier script, celui qui porte le nom final et copiez au tout début le script.
Enregistrez le tout, votre script est prêt!
 | Lors de la copie du code SQL du premier script vers le second, vous remarquerez la présence du chemin
de création du fichier de la base de données et de son journal.
Pensez à les modifier pour créer votre base de données où bon vous semble. |
 | Le script est un fichier texte, il contiendra donc toutes les données en clair, de plus si la base est
volumineuse, le script SQL le sera aussi. |
V. Conclusion
La création d'un script SQL vous permettant de copier votre base de données dans un nouveau serveur tout
en gardant les données qui s'y trouvent n'est pas une tâche compliquée et peut être très utile lors
du déploiement d'application ayant besoin d'une base de données nécessitant la présence de quelques
données dès le départ.
Dans le cas plus rare mais au combien ennuyeux d'un downgrade de version (passer d'un SQL Server 2008 à un SQL server 2000, par exemple), toute
copie via backup/restore ou détachage/rattachage s'avérera vaine: seule cette méthode pourra alors vous sauver la mise.


Les sources présentées sur cette page sont libres de droits,
et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation
constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright ©
Poulain. Aucune reproduction,
même partielle, ne peut être faite de ce site et de l'ensemble de son contenu :
textes, documents, images, etc sans l'autorisation expresse de l'auteur.
Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E
de dommages et intérêts. Droits de diffusion permanents accordés à developpez LLC.
Cette page est déposée à la
SACD.