Exemplos de consultas de banco de dados usando o SQL e scripts

Um exemplo de uso de consultas de banco de dados controladas por script é fornecido no SDK (Windows Installer Software Development Kit) como o utilitário WiRunSQL.vbs. Esse utilitário manipula consultas de banco de dados usando a versão do Windows Installer do SQL descrita na seção Sintaxe SQL.

Excluir um registro de uma tabela

A linha de comando a seguir exclui o registro com a chave primária RED da tabela Recurso do banco de dados Test.msi.

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

Adicionar uma tabela a um banco de dados

A linha de comando a seguir adiciona a tabela Diretório ao banco de dados 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`)"

Para remover uma tabela de um diagrama de banco de dados

A linha de comando a seguir remove a tabela De recursos do banco de dados Test.msi.

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

Adicionar uma coluna de chave a uma tabela

A linha de comando a seguir adiciona a coluna Teste à tabela CustomAction do banco de dados Test.msi.

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

Inserir um novo registro em uma tabela

A linha de comando a seguir insere um novo registro na tabela Recurso do banco de dados Test.msi.

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

Isso insere o seguinte registro na tabela Recurso de Test.msi.

Tabela Recurso

Recurso Feature_Parent Título Descrição Exibir Nível Directory_ Atributos
Tênis Esporte Tênis Torneio 25 3 SPORTDIR 2

 

Observe que os dados binários não podem ser inseridos em uma tabela diretamente usando as consultas INSERT INTO ou UPDATE SQL. Para obter informações, confira Adicionando dados binários a uma tabela usando SQL.

Modificar um registro existente em uma tabela

A linha de comando a seguir altera o valor existente no campo Título para "Desempenhos". O registro atualizado tem "Arts" como sua chave primária e está na tabela Recurso do banco de dados Test.msi.

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

Selecionar um grupo de registros

A linha de comando a seguir seleciona o nome e o tipo de todos os controles que pertencem ao ErrorDialog no banco de dados Test.msi.

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

Manter uma tabela na memória

A linha de comando a seguir bloqueia a tabela Componente do banco de dados Test.msi na memória.

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

Liberar uma tabela na memória

A linha de comando a seguir libera a tabela Componente do banco de dados Test.msi da memória.

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