Freigeben über


Beispiele für Datenbankabfragen mit SQL und Skript

Ein Beispiel für die Verwendung skriptgesteuerter Datenbankabfragen finden Sie im Windows Installer Software Development Kit (SDK) als Hilfsprogramm „WiRunSQL.vbs“. Dieses Hilfsprogramm verarbeitet Datenbankabfragen mit der Windows Installer-Version von SQL, die im Abschnitt SQL-Syntax beschrieben wird.

Löschen eines Datensatzes aus einer Tabelle

Die folgende Befehlszeile löscht den Datensatz mit dem Primärschlüssel „RED“ aus der Feature-Tabelle der Datenbank „Test.msi“.

Cscript WiRunSQL.vbs Test.msi "DELETE FROM `Feature` WHERE `Feature`.`Feature`='RED'"

Hinzufügen einer Tabelle zu einer Datenbank

Die folgende Befehlszeile fügt der Datenbank „Test.msi“ die Directory-Tabelle hinzu.

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`)"

Entfernen einer Tabelle aus einer Datenbank

Die folgende Befehlszeile entfernt die Feature-Tabelle aus der Datenbank „Test.msi“.

Cscript WiRunSQL.vbs Test.msi "DROP TABLE `Feature`"

Hinzufügen einer neuen Spalte zu einer Tabelle

Die folgende Befehlszeile fügt der CustomAction-Tabelle der Test.msi-Datenbank die Spalte „Test“ hinzu.

CScript WiRunSQL.vbs Test.msi "ALTER TABLE `CustomAction` ADD `Test` INTEGER"

Einfügen eines neuen Datensatzes in eine Tabelle

Die folgende Befehlszeile fügt einen neuen Datensatz in die Feature-Tabelle der Test.msi-Datenbank ein.

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

Dadurch wird der folgende Datensatz in die Feature-Tabelle von „Test.msi“ eingefügt.

Feature-Tabelle

Funktion Feature_Parent Titel BESCHREIBUNG Anzeige Ebene Directory_ Attribute
Tennis Sport Tennis Tournament 25 3 SPORTDIR 2

 

Beachten Sie, dass Binärdaten mit den SQL-Abfragen „INSERT INTO“ und „UPDATE“ nicht direkt in eine Tabelle eingefügt werden können. Weitere Informationen finden Sie unter Hinzufügen von Binärdaten zu einer Tabelle mit SQL.

Ändern eines vorhandenen Datensatzes in einer Tabelle

Die folgende Befehlszeile ändert den vorhandenen Wert im Feld „Title“ in „Performances“. Der aktualisierte Datensatz weist „Arts“ als Primärschlüssel auf und befindet sich in der Feature-Tabelle der Test.msi-Datenbank.

Cscript WiRunSQL.vbs Test.msi "UPDATE `Feature` SET `Feature`.`Title`='Performances' WHERE `Feature`.`Feature`='Arts'"

Auswählen einer Gruppe von Datensätzen

Die folgende Befehlszeile wählt den Namen und Typ aller Steuerelemente aus, die zu „ErrorDialog“ in der Test.msi-Datenbank gehören.

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

Speichern einer Tabelle im Arbeitsspeicher

Die folgende Befehlszeile sperrt die Component-Tabelle der Test.msi-Datenbank im Arbeitsspeicher.

CScript WiRunSQL.vbs Test.msi "ALTER TABLE `Component` HOLD"

Freigeben einer Tabelle im Arbeitsspeicher

Die folgende Befehlszeile gibt die Component-Tabelle der Test.msi-Datenbank im Arbeitsspeicher frei.

CScript WiRunSQL.vbs Test.msi "ALTER TABLE `Component` FREE"