Esempi di query di database tramite SQL e script

Un esempio di uso delle query di database basate su script viene fornito in Windows Installer Software Development Kit (SDK) come utilità WiRunSQL.vbs. Questa utilità gestisce le query di database usando la versione di Windows Installer di SQL descritta nella sezione Sintassi SQL.

Eliminare un record da una tabella

La riga di comando seguente elimina il record con la chiave primaria RED dalla tabella Funzionalità del database Test.msi.

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

Aggiungere una tabella a un database

La riga di comando seguente aggiunge la tabella Directory al database 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')"

Rimuovere una tabella da un database

La riga di comando seguente rimuove la tabella Funzionalità dal database Test.msi.

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

Aggiungere una nuova colonna a una tabella

La riga di comando seguente aggiunge la colonna Test alla tabella CustomAction del database Test.msi.

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

Inserire un nuovo record in una tabella

La riga di comando seguente inserisce un nuovo record nella tabella Funzionalità del database 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','Torneo','25,'SPORTDIR',2)"

Questo inserisce il record seguente nella tabella Feature di Test.msi.

Funzionalità Tavolo

Funzionalità Feature_Parent Titolo Descrizione Visualizza Level Directory_ Attributi
Tennis Sport Tennis Torneo 25 3 SPORTDIR 2

 

Si noti che i dati binari non possono essere inseriti in una tabella direttamente usando le query INSERT INTO o UPDATE SQL. Per informazioni, vedere Aggiunta di dati binari a una tabella tramite SQL.

Modificare un record esistente in una tabella

La riga di comando seguente modifica il valore esistente nel campo Titolo in "Performance". Il record aggiornato ha "Arts" come chiave primaria e si trova nella tabella Feature del database Test.msi.

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

Selezionare un gruppo di record

La riga di comando seguente seleziona il nome e il tipo di tutti i controlli appartenenti al database ErrorDialog nel database Test.msi.

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

Tenere una tabella in memoria

La riga di comando seguente blocca la tabella Component del database Test.msi in memoria.

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

Liberare una tabella in memoria

La riga di comando seguente libera la tabella Component del database Test.msi dalla memoria.

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