Exemples de requêtes de base de données à l’aide de SQL et d’un script

Un exemple d’utilisation de requêtes de base de données pilotées par un script est fourni dans le Kit de développement logiciel (SDK) Windows Installer en tant qu’utilitaire WiRunSQL.vbs. Cet utilitaire gère les requêtes de base de données à l’aide de la version Windows Installer de SQL décrite dans la section Syntaxe SQL.

Supprimer un enregistrement d’une table

La ligne de commande suivante supprime l’enregistrement ayant la clé primaire RED de la table Fonctionnalité de la base de données Test.msi.

Cscript WiRunSQL.vbs Test.msi « DELETE FROM 'Feature' WHERE 'Feature'.'Feature'='RED' »

Ajouter une table à une base de données

La ligne de commande suivante ajoute la table Répertoire à la base de données Test.msi.

CScript WiRunSQL.vbs Test.msi « CREATE TABLE 'Directory' ('Directory' CHAR(72) NOT NULL, 'Directory_Parent' CHAR(72), 'DefaultDir' CHAR(255) NOT NULL LOCALIZABLE PRIMARY KEY 'Directory') »

Pour supprimer une table d’une base de données

La ligne de commande suivante supprime la table Fonctionnalités de la base de données Test.msi.

Cscript WiRunSQL.vbs Test.msi « DROP TABLE 'Feature' »

Ajouter une nouvelle colonne à une table

La ligne de commande suivante ajoute la colonne Test à la table CustomAction de la base de données Test.msi.

CScript WiRunSQL.vbs Test.msi « ALTER TABLE 'CustomAction' ADD 'Test' INTEGER »

Insère un nouvel enregistrement dans une table

La ligne de commande suivante insère un nouvel enregistrement dans la table Fonctionnalités de la base de données Test.msi.

Cscript WiRunSQL.vbs Test.msi « INSERT INTO 'Feature' ('Feature'.'Feature','Feature','Feature'.'Feature_Parent','Feature'.'Title','Feature'.'Description', 'Feature'.'Display','Feature'.'Level','Feature'.'Directory_','Feature'.'Attributes') VALUES ('Tennis','Sport','Tennis','Tournoi',25,3,'SPORTDIR',2) »

Cela insère l’enregistrement suivant dans la table Fonctionnalités de Test.msi.

Table Fonctionnalités

Fonctionnalité Feature_Parent Titre Description Affichage Level Directory_ Attributs
Tennis Sport Tennis Tournoi 25 3 SPORTDIR 2

 

Notez que les données binaires ne peuvent pas être insérées dans une table directement à l’aide des requêtes INSERT INTO ou UPDATE SQL. Pour plus d’informations, consultez Ajout de données binaires à une table à l’aide de SQL.

Mettre à jour un enregistrement existant dans une table

La ligne de commande suivante remplace la valeur existante dans le champ-titre de « Performances ». L’enregistrement mis à jour a « Arts » comme clé primaire et se trouve dans la table Fonctionnalités de la base de données Test.msi.

Cscript WiRunSQL.vbs Test.msi « UPDATE 'Feature' SET 'Feature'.'Title'='Performances' WHERE 'Feature'.'Feature'='Arts' »

Sélectionner un groupe d’enregistrements

La ligne de commande suivante sélectionne le nom et le type de tous les contrôles qui appartiennent à ErrorDialog dans la base de données Test.msi.

CScript WiRunSQL.vbs Test.msi « SELECT 'Control', 'Type' FROM 'Control' WHERE 'Dialog_'='ErrorDialog' »

Conserver une table en mémoire

La ligne de commande suivante verrouille la table Composants de la base de données Test.msi en mémoire.

CScript WiRunSQL.vbs Test.msi « ALTER TABLE 'Component' HOLD »

Supprimer une table en mémoire

La ligne de commande suivante supprime la table Composants de la base de données Test.msi en mémoire.

CScript WiRunSQL.vbs Test.msi « ALTER TABLE 'Component' HOLD »