_TransformView數據表
這是唯讀臨時表,用來檢視轉換檢視模式的轉換。 安裝程式絕不會保存此數據表。
若要叫用轉換檢視模式,請取得句柄並開啟參考資料庫。 請參閱 取得資料庫句柄。 使用 MSITRANSFORM_ERROR_VIEWTRANSFORM 呼叫 MsiDatabaseApplyTransform。 這會停止將轉換套用至資料庫,並將轉換內容傾印至_TransformView數據表。 您可以使用 SQL 查詢來存取資料表中的資料。 請參閱 使用查詢。
套用另一個轉換時,不會清除_TransformView數據表。 數據表會反映後續應用程式的累計效果。 若要個別檢視轉換,您必須釋放數據表。
_TransformView Table 具有下列數據行。
列 | 類型 | 鑰匙 | 空 |
---|---|---|---|
桌子 | 識別碼 | Y | N |
列 | 文字 | Y | N |
排 | 文字 | Y | Y |
數據 | 文字 | N | Y |
當前 | 文字 | N | Y |
列
-
數據表
-
改變的資料庫數據表名稱。
-
欄
-
改變的數據表數據行或 INSERT、DELETE、CREATE 或 DROP 的名稱。
-
列
-
以索引標籤分隔的主鍵值清單。 Null 主鍵值會以單一空格符表示。 此數據行中的 Null 值表示架構變更。
-
數據
-
數據、數據流的名稱或數據行定義。
-
目前
-
參考資料庫或數位行的目前值。
言論
_TransformView會依鎖定計數保留在記憶體中,可使用下列 SQL 命令釋放。
“ALTER TABLE _TransformView FREE”。
您可以使用 SQL 查詢來存取資料表中的資料。 SQL 語言有兩個主要差異:用來定義 SQL 資料庫中所有物件的數據定義語言(DDL),以及用來選取、插入、更新和刪除使用 DDL 定義之物件中的數據作語言 (DML)。
數據作語言 (DML) 轉換作業如下所示。 數據作語言 (DML) 是 SQL 中的語句,與定義數據相反。
轉換作業 | SQL 結果 |
---|---|
修改數據 | {table}{column}{row}{data}{current value} |
插入數據列 | {table}“INSERT” {row} NULL NULL |
刪除數據列 | {table}“DELETE” {row} NULL 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 Binary 物件 十六進位:0x0C00 十進位:3072 字串 |
位12 |
十六進位:0x1000 十進位:4096 可為 Null 的數據行。 零表示數據行不可為 Null。 |
位 13 |
十六進位:0x2000 十進位:8192 主鍵數據行。 零表示此數據行不是主鍵。 |
位 14 15 |
十六進位:0x4000 0x8000 十進位:16384 32768 保留 |
如需示範_TransformView資料表的文稿範例,請參閱 檢視轉換。