Примеры запросов к базе данных с помощью SQL и скрипта

Пример использования запросов базы данных на основе скриптов приведен в пакете средств разработки программного обеспечения установщика Windows в качестве служебной WiRunSQL.vbs. Эта служебная программа обрабатывает запросы к базе данных с помощью версии установщика Windows SQL, описанной в разделе "Синтаксис SQL".

Удаление записи из таблицы

Следующая командная строка удаляет запись с первичным ключом RED из таблицы компонентов базы данных Test.msi.

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

Добавление таблицы в базу данных

Следующая командная строка добавляет таблицу каталога в базу данных 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')"

Удаление таблицы из базы данных

Следующая командная строка удаляет таблицу компонентов из базы данных Test.msi.

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

Добавление нового столбца в таблицу

Следующая командная строка добавляет столбец Test в таблицу CustomAction базы данных Test.msi.

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

Вставка новой записи в таблицу

Следующая командная строка вставляет новую запись в таблицу компонентов базы данных Test.msi.

Cscript WiRunSQL.vbs Test.msi "INSERT INTO 'Feature' ('Feature'.'Feature','Feature'.'Feature_Parent','Feature'.'Title','Feature','Feature'.'Description', 'Feature'.'Display','Feature'.'Level','Feature','Directory_','Feature'.'Attributes') VALUES ('Теннис','Спорт','Теннис','Турнир',25,3,'SPORTDIR',2)"

При этом в таблицу компонентов Test.msi вставляется следующая запись.

Функция Таблице

Компонент Feature_Parent Title Описание Отображение Level Directory_ Атрибуты
Теннис Спорт Теннис Турнир 25 3 SPORTDIR 2

 

Обратите внимание, что двоичные данные нельзя вставить в таблицу напрямую с помощью запросов INSERT INTO или UPDATE SQL. Дополнительные сведения см. в разделе "Добавление двоичных данных в таблицу с помощью SQL".

Изменение существующей записи в таблице

Следующая командная строка изменяет существующее значение в поле "Заголовок" на "Performances". Обновленная запись имеет значение "Arts" в качестве первичного ключа и находится в таблице feature базы данных Test.msi.

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

Выбор группы записей

Следующая командная строка выбирает имя и тип всех элементов управления, принадлежащих к ErrorDialog в базе данных Test.msi.

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

Хранение таблицы в памяти

Следующая командная строка блокирует таблицу компонентов базы данных Test.msi в памяти.

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

Освобождение таблицы в памяти

Следующая командная строка освобождает таблицу компонентов базы данных Test.msi из памяти.

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