Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Это временная таблица только для чтения, используемая для просмотра преобразований с помощью режима представления преобразования. Эта таблица никогда не сохраняется установщиком.
Чтобы вызвать режим представления преобразования, получите дескриптор и откройте эталонную базу данных. См. получение дескриптора базы данных. Вызов MsiDatabaseApplyTransform с MSITRANSFORM_ERROR_VIEWTRANSFORM. Это останавливает преобразование от применения к базе данных и дамп содержимого преобразования в таблицу _TransformView. Доступ к данным в таблице можно получить с помощью запросов SQL. См. работа с запросами.
Таблица _TransformView не очищается при применении другого преобразования. Таблица отражает совокупный эффект последовательных приложений. Чтобы просмотреть преобразования отдельно, необходимо освободить таблицу.
Таблица _TransformView содержит следующие столбцы.
| Столбец | Тип | Ключ | Допустимое значение NULL |
|---|---|---|---|
| Стол | идентификатора | Y | N |
| Столбец | текста | Y | N |
| Ряд | текста | Y | Y |
| Данные | текста | N | Y |
| Текущий | текста | N | Y |
Столбец
-
таблица
-
Имя измененной таблицы базы данных.
-
Столбец
-
Имя измененного столбца таблицы или INSERT, DELETE, CREATE или DROP.
-
Строка
-
Список значений первичного ключа, разделенных вкладками. Значения первичного ключа NULL представлены одним символом пробела. Значение NULL в этом столбце указывает на изменение схемы.
-
данные
-
Данные, имя потока данных или определение столбца.
-
Current
-
Текущее значение из эталонной базы данных или число столбца.
Замечания
_TransformView хранится в памяти числом блокировок, которые можно освободить с помощью следующей команды SQL.
ALTER TABLE _TransformView FREE.
Доступ к данным в таблице можно получить с помощью запросов SQL. Язык SQL имеет два основных раздела: язык определения данных (DDL), который используется для определения всех объектов в базе данных SQL и языка обработки данных (DML), который используется для выбора, вставки, обновления и удаления данных в объектах, определенных с помощью DDL.
Операции преобразования языка обработки данных (DML) указываются следующим образом. Язык обработки данных (DML) — это эти инструкции в SQL, которые обрабатываются в отличие от определения данных.
| Операция преобразования | Результат SQL |
|---|---|
| Изменение данных | {table} {column} {row} {data} {текущее значение} |
| Вставка строки | {table} "INSERT" {row} NULL |
| Удаление строки | {table} "DELETE" {row} NULL |
Операции преобразования языка определения данных (DDL) указываются следующим образом. Язык определения данных (DDL) — это эти инструкции в SQL, которые определяют, в отличие от управления данными.
| Операция преобразования | Результат SQL |
|---|---|
| Добавление столбца | {table} {column} NULL {defn} {column number} |
| Добавление таблицы | {table} "CREATE" NULL NULL NULL |
| Удаление таблицы | {table} "DROP" NULL NULL NULL |
Когда приложение преобразования добавляет эту таблицу, поле данных получает текст, который можно интерпретировать как 16-разрядное целочисленное значение. Значение описывает столбец с именем в поле "Столбец". Целочисленное значение можно сравнить с константами в следующей таблице, чтобы определить определение измененного столбца.
| Бит | Описание |
|---|---|
|
биты 0 7 |
Шестнадцатеричное: 0x0000 0x0100 Десятичное: 0 255 Ширина столбца |
|
бит 8 |
Шестнадцатеричное: 0x0100 Десятичная: 256 Постоянный столбец. Ноль означает временный столбец. |
|
бит 9 |
Шестнадцатеричное: 0x0200 Десятичное: 1023 Локализуемый столбец. Ноль означает, что столбец не может быть локализован. |
|
биты 10 11 |
Шестнадцатеричное: 0x0000 Десятичное: 0 Длинное целое число Шестнадцатеричное: 0x0400 Десятичное: 1024 Короткое целое число Шестнадцатеричное: 0x0800 Десятичное: 2048 Двоичный объект Шестнадцатеричное: 0x0C00 Десятичный: 3072 Струна |
|
бит 12 |
Шестнадцатеричное: 0x1000 Десятичное: 4096 Столбец, допускающий значение NULL. Ноль означает, что столбец не имеет значения NULL. |
|
бит 13 |
Шестнадцатеричное: 0x2000 Десятичная: 8192 Столбец первичного ключа. Ноль означает, что этот столбец не является первичным ключом. |
|
биты 14 15 |
Шестнадцатеричное: 0x4000 0x8000 Десятичный: 16384 32768 Скрытный |
Пример скрипта, демонстрирующий таблицу _TransformView, см. в разделе Просмотрпреобразования.