tabulka _TransformView
Jedná se o dočasnou tabulku určenou jen pro čtení, která slouží k zobrazení transformací pomocí režimu zobrazení transformace. Instalační program tuto tabulku nikdy neuchovává.
Pokud chcete vyvolat režim zobrazení transformace, získejte popisovač a otevřete referenční databázi. Viz Získání popisovače databáze. Volání MsiDatabaseApplyTransform pomocí MSITRANSFORM_ERROR_VIEWTRANSFORM. Tím se zastaví použití transformace na databázi a vypíše obsah transformace do tabulky _TransformView. K datům v tabulce je možné přistupovat pomocí dotazů SQL. Viz Práce s dotazy.
Tabulka _TransformView není při použití jiné transformace vymazána. Tabulka odráží kumulativní účinek po sobě jdoucích aplikací. Pokud chcete zobrazit transformace samostatně, musíte tabulku uvolnit.
Tabulka _TransformView obsahuje následující sloupce.
Sloupec | Typ | Klíč | Nullable |
---|---|---|---|
Stůl | identifikátor | Y | N |
Sloupec | textové | Y | N |
Veslovat | textové | Y | Y |
Data | textové | N | Y |
Současný | textové | N | Y |
Sloupec
-
tabulka
-
Název změněné databázové tabulky
-
sloupec
-
Název upraveného sloupce tabulky nebo INSERT, DELETE, CREATE nebo DROP.
-
řádek
-
Seznam hodnot primárního klíče oddělených kartami Hodnoty primárního klíče null jsou reprezentovány jedním znakem mezery. Hodnota Null v tomto sloupci označuje změnu schématu.
-
data
-
Data, název datového proudu nebo definice sloupce
-
aktuální
-
Aktuální hodnota z referenční databáze nebo sloupce číslo
Poznámky
_TransformView se uchovává v paměti počtem zámků, které lze uvolnit pomocí následujícího příkazu SQL.
"ALTER TABLE _TransformView FREE".
K datům v tabulce je možné přistupovat pomocí dotazů SQL. Jazyk SQL má dvě hlavní dělení: DDL (Data Definition Language), která slouží k definování všech objektů v databázi SQL a jazyk DML (Data Manipulat Language), která slouží k výběru, vkládání, aktualizaci a odstraňování dat v objektech definovaných pomocí DDL.
Transformační operace jazyka DML (Data Manipulat Language) jsou uvedeny následujícím způsobem. Jazyk DML (Data Manipulation Language) jsou tyto příkazy v SQL, které manipulují s daty, a nikoli definují data.
Operace transformace | Výsledek SQL |
---|---|
Úprava dat | {table} {column} {row} {data} {current value} |
Vložit řádek | {table} "INSERT" {row} NULL NULL |
Odstranit řádek | {table} "DELETE" {row} NULL NULL |
Transformační operace jazyka DDL (Data Definition Language) jsou uvedeny následujícím způsobem. Jazyk DDL (Data Definition Language) jsou tyto příkazy v SQL, které definují data, na rozdíl od manipulace s daty.
Operace transformace | Výsledek SQL |
---|---|
Přidat sloupec | {table} {column} NULL {defn} {column number} |
Přidání tabulky | {table} "CREATE" NULL NULL NULL |
Drop table | {table} "DROP" NULL NULL NULL |
Když aplikace transformace přidá tuto tabulku, pole Data obdrží text, který lze interpretovat jako 16bitovou celočíselnou hodnotu. Hodnota popisuje sloupec pojmenovaný v poli Sloupec. Celočíselná hodnota můžete porovnat s konstantami v následující tabulce a určit definici upraveného sloupce.
Bit | Popis |
---|---|
Bits 0 7 |
Šestnáctkové: 0x0000 0x0100 Desetinné číslo: 0 255 Šířka sloupce |
bit 8 |
Šestnáctkové: 0x0100 Desetinné číslo: 256 Trvalý sloupec. Nula znamená dočasný sloupec. |
Bit 9 |
Šestnáctkové: 0x0200 Desetinné číslo: 1023 Lokalizovatelný sloupec. Nula znamená, že sloupec nelze lokalizovat. |
bitů 10 11 |
Šestnáctkové: 0x0000 Desetinné číslo: 0 Dlouhé celé číslo Šestnáctkové: 0x0400 Desetinné číslo: 1024 Krátké celé číslo Šestnáctkové: 0x0800 Desetinné číslo: 2048 Binární objekt Šestnáctkové: 0x0C00 Desetinné číslo: 3072 Řetězec |
bit 12 |
Šestnáctkové: 0x1000 Desetinné číslo: 4096 Sloupec s možnou hodnotou null. Nula znamená, že sloupec není nullable. |
bit 13 |
Šestnáctkové: 0x2000 Desetinné číslo: 8192 Sloupec primárního klíče Nula znamená, že tento sloupec není primárním klíčem. |
bitů 14 15 |
Šestnáctkové: 0x4000 0x8000 Desetinné číslo: 16384 32768 Rezervovaný |
Ukázkový skript, který ukazuje tabulku _TransformView, naleznete v tématu Zobrazenítransformace .