Имя таблицы | Краткое описание |
---|---|
_Tables | Хранит имена всех таблиц инсталляционной базы данных, включая созданные автором пакета для личных целей (например, для использования в своих операциях). Эта таблица доступна только на чтение |
_Columns | Хранит информацию обо всех столбцах в таблицах инсталляционной базы данных. Но временные столбцы в этой таблице не хранятся. Как и предыдущая таблица, доступна только на чтение |
_Streams | Содержит потоки данных OLE. Эта таблица временная и создается только при выполнении определенных SQL-запросов, например, при выполнении функции MsiRecordReadStream |
_Storages | Содержит хранилища данных OLE. Эта таблица также временная и создается только при выполнении определенных SQL-запросов, например, при выполнении функции MsiRecordSetStream |
_Validation | Эта таблица содержит информацию о столбцах в таблицах базы данных, включая их имена и диапазоны допустимых значений, а также другую важную для базы данных информацию. Используется только при проверке целостности базы данных |
Таблицы поиска
Таблицы поиска используются для поиска файлов и приложений на компьютере пользователя. Чтобы найти файл, нужно сначала задать сигнатуру файла, а затем произвести поиск. Таблицы этой группы можно использовать для поиска в реестре, в данных конфигурации инсталлятора, по дереву каталогов или в .ini-файлах. При этом ищется файл или каталог с заданной уникальной сигнатурой. Затем, если файл найден, его сигнатура проверяется по таблице Signature, чтобы убедиться, что данный файл действительно тот, который нужен, а не просто еще один файл с таким же именем. Если запись в таблице поиска не связана с таблицей Signature, значит, запись ссылается на каталог, а не на файл.
Компонент, которому принадлежит нужный файл, определяется через связь между таблицами File и Component. Installer определяет подчиненность файла через таблицу компонентов, потому что каждый файл связан с одним компонентом. Местоположение компонента определяется по внешнему ключу в таблице Component, указывающему на таблицу Directory.
Нужные приложения ищутся аналогично: при этом находятся определенные файлы, из которых состоит приложение. Installer также предоставляет две таблицы, позволяющие искать предыдущие версии приложений: AppSearch и CCPSearch.
Группа таблиц поиска состоит из 7 таблиц, описание которых дано ниже: