> Tech > Créer la base de données

Créer la base de données

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

La création de la base de données constitue le coeur de l'installation. Elle s'effectue en plusieurs étapes, dont la première est la création du script SQL CreateWhsDB.sql. Le listing 1 montre un exemple de script servant à  créer une base de données sur le serveur courant. Ce script résulte quand

Créer la base de données

le package
Installer exécute le fichier
CreateWhsDB.vbs d’accompagnement.
L’installation définit quatre paramètres
pour la commande CREATE DATABASE:
le premier paramètre est le nouveau
nom de la base de données, et le second
indique l’emplacement du fichier .mdf.
Le script peut également indiquer l’emplacement
et le nom du fichier journal;
toutefois, la commande CREATE DATABASE
génère un fichier avec le nom par
défaut dans le même répertoire que le fichier
de données primaire de la base de
données quand on ne spécifie pas un
emplacement de fichier journal explicite.
Les troisième et quatrième paramètres
sont la taille initiale de la base de
données et le pourcentage de croissance
du fichier.

Le script exécute deux procédures
cataloguées. La première, sp_addlogin,
crée un nouveau compte utilisateur
pour le serveur de base de données et
attribue un mot de passe et une base de
données par défaut pour ce compte.
Sp_addlogin crée un compte SQL
Server ; pour que le script crée un
compte ou un groupe NT, remplacez cet
appel de procédure cataloguée par un
appel à  sp_grantlogin. Sp_addlogin et
sp_grantlogin travaillent tous deux avec
la procédure cataloguée sp_grantdbaccess.
Une fois que le script a donné à 
l’utilisateur l’accès à  SQL Server, la procédure
cataloguée sp_grantdbaccess attribue
le nouveau compte comme un
utilisateur valide à  une base de données
sur le serveur.

Le listing 1 n’est qu’un exemple car
ses valeurs sont codées en dur. Le package Installer déclenche l’action
CreateDB pour exécuter le script
CreateWhsDB.vbs que montre le listing
1. Le code du listing 2 utilise un objet du
système de fichiers pour ouvrir, puis
remplacer tout le texte exemple que
contient le listing 1. Dès que le script
du listing 2 ouvre le fichier
CreateWhsDB.sql, le script écrit simplement
les mêmes commandes dans le
même format en utilisant une suite de
valeurs de session provenant des propriétés
que l’Installer a définies. La
première propriété d’installation,
Session.Property (« INSTALLDIR ») utilise
l’information du chemin de script que
vous sélectionnez pour l’installation de
la base de données. Cette installation
place les fichiers script dans le même répertoire
que celui dans lequel l’installation
crée les fichiers base de données.
Pour changer la manière dont le script
utilise le répertoire d’installation sélectionné
comme cible pour les fichiers
base de données primaires, il vous faut
seulement modifier la commande. Le
code du listing 2 écrit la valeur FILENAME
dans le fichier script .sql.

La commande OpenTextFile permet
au script CreateWhsDB.vbs d’ouvrir le fichier
de script CreateWhsDB.sql. Cette
commande comporte quelques paramètres
qui n’apparaissent pas dans le
script. Le premier paramètre définit le
chemin et le nom du fichier. En ajoutant
l’information du premier paramètre au
répertoire d’installation, on obtiendra le
chemin complet à  l’exécution. Le
deuxième paramètre indique si le fichier
doit être ouvert pour lecture, écriture
ou ajout ; la valeur 2 représente l’écriture.
La valeur du troisième paramètre,
True, ordonne à  l’objet de créer le fichier s’il n’existe pas. La valeur du dernier
paramètre, -1, ordonne à  la section
d’I/O du fichier d’utiliser des caractères
Unicode. Les valeurs de
Session.Property restantes représentent
les valeurs personnalisées que l’on
ajoute au package Installer. Pour ce
script, les valeurs correspondent directement
aux champs de la figure 2. Les valeurs
WHSDBNAME, WHSDBUSER et
WHSDBPWD proviennent de l’installation
de base de données présentée dans
la figure 2.

Chaque commande WriteLine place une ligne complète, avec retour chariot
et interligne, dans le fichier script
CreateWhsDB.sql. La constante vbCrLf
ajoute une ligne vierge supplémentaire
au script CreateWhsDB.sql pour une
meilleure lisibilité. Le script finit en fermant
les objets File et File System. Bien
que le code du listing 2 fournisse un
moyen de créer la base de données et
les utilisateurs, il demande une quantité
appréciable de scripting personnalisé.
La solution présentée dans cet article serait
d’une utilité limitée si chaque installation
avait besoin d’autant de script. Heureusement, vous pouvez générer les
objets de base de données (tables, procédures
cataloguées, par exemple) et les
données statiques à  importer dans la
nouvelle base de données.

Téléchargez cette ressource

Préparer l’entreprise à l’IA et aux technologies interconnectées

Préparer l’entreprise à l’IA et aux technologies interconnectées

Avec la « quatrième révolution industrielle », les environnements hyperconnectés entraînent de nouveaux risques en matière de sécurité. Découvrez, dans ce guide Kaspersky, comment faire face à cette nouvelle ère de vulnérabilité.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010