Ejemplos de consultas de base de datos mediante SQL y script
En el Kit de desarrollo de software (SDK) de Windows Installer se proporciona un ejemplo de uso de consultas de base de datos controladas por scripts como la utilidad WiRunSQL.vbs. Esta utilidad controla las consultas de base de datos mediante la versión de Windows Installer de SQL descrita en la sección Sintaxis SQL.
Eliminación de un registro de una tabla
La siguiente línea de comandos elimina el registro que tiene la clave principal RED de la tabla Característica de la base de datos Test.msi.
Cscript WiRunSQL.vbs Test.msi "DELETE FROM `Feature` WHERE `Feature`.`Feature`='RED'"
Agregar una tabla a una base de datos
La siguiente línea de comandos agrega la tabla Directorio a la base de datos 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')"
Quitar una tabla de una base de datos
La siguiente línea de comandos quita la tabla Característica de la base de datos Test.msi.
Cscript WiRunSQL.vbs Test.msi "DROP TABLE `Feature`"
Agregar una nueva columna a una tabla
La siguiente línea de comandos agrega la columna Test a la tabla CustomAction de la base de datos Test.msi.
CScript WiRunSQL.vbs Test.msi "ALTER TABLE `CustomAction` ADD `Test` INTEGER"
Insertar un nuevo registro en una tabla
La siguiente línea de comandos inserta un nuevo registro en la tabla Característica de la base de datos 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)"
Esto inserta el siguiente registro en la tabla Característica de Test.msi.
Tabla Característica
Característica | Feature_Parent | Título | Descripción | Mostrar | Nivel | Directory_ | Atributos |
---|---|---|---|---|---|---|---|
Tenis | Deporte | Tenis | Torneo | 25 | 3 | SPORTDIR | 2 |
Tenga en cuenta que los datos binarios no se pueden insertar en una tabla directamente mediante las consultas INSERT INTO o UPDATE SQL. Para obtener más información, consulte Agregar datos binarios a una tabla mediante SQL.
Modificar un registro existente en una tabla
La siguiente línea de comandos cambia el valor existente en el campo Título a "Actuaciones". El registro actualizado tiene "Artes" como clave principal y se encuentra en la tabla Característica de la base de datos de Test.msi.
Cscript WiRunSQL.vbs Test.msi "UPDATE 'Feature' SET 'Feature'.'Title'='Performances' WHERE 'Feature'.'Feature'='Arts'"
Seleccionar un grupo de registros
La siguiente línea de comandos selecciona el nombre y el tipo de todos los controles que pertenecen a ErrorDialog en la base de datos Test.msi.
CScript WiRunSQL.vbs Test.msi "SELECT 'Control', 'Type' FROM 'Control' WHERE 'Dialog_'='ErrorDialog' "
Mantener una tabla en memoria
La siguiente línea de comandos bloquea la tabla Componente de la base de datos Test.msi en memoria.
CScript WiRunSQL.vbs Test.msi "ALTER TABLE `Component` HOLD"
Liberar una tabla en memoria
La siguiente línea de comandos libera la tabla Componente de la base de datos Test.msi en memoria.
CScript WiRunSQL.vbs Test.msi "ALTER TABLE `Component` FREE"