封存檔案格式
Windows Installer 資料庫的 文字封存檔案 具有 .idt 副檔名。 當整個資料庫匯出至封存檔案時,資料庫中的每個資料表都有個別的 .idt 檔案。 如果資料表包含資料流程資料行,資料表中的每個資料流程都會以副檔名為 .ibd 的檔案來表示。 .ibd 檔案會儲存在名稱與資料表相同的資料夾中。
.idt 檔案格式
僅包含 ASCII 字元之匯出資料庫資料表的 .idt 檔案具有下列基本格式。
- 第一個資料列包含以索引標籤分隔的資料表資料行名稱。
- 第二個數據列包含以索引標籤分隔的資料行定義。
- 如果檔案只包含 ASCII 資料,則第三個數據列是資料表名稱和主鍵資料行名稱,並以索引標籤分隔。
- 檔案中的其餘資料列代表資料表中的資料列,並以索引標籤分隔的資料行。
注意
如果檔案包含非 ASCII 資料,第三個數據列是數值字碼頁,後面接著以索引標籤分隔的資料表名稱和主鍵資料行名稱。 包含非 ASCII 資訊的 .idt 檔案應該以 ASCII 格式儲存。 例如,文字封存檔案可以包含編碼為 UTF-8 的資料行和資料表名稱,但封存檔案本身應該是 ASCII。 請參閱文字封 存檔案中的 ASCII 資料一節。
注意
特殊 _ForceCodepage 和 _SummaryInformation .idt 檔案會使用擴充格式。 如需其格式的描述,請參閱_ForceCodepage和_SummaryInformation小節。
資料行定義
資料行定義是以字元表示。
第一個字元表示資料行類型。 小寫字母表示不可為 Null 的資料行,而大寫字母表示資料行可以包含 Null 值。
字元 意義 s、S 字串資料行 l、L 可當地語系化的字串資料行 v、V 二進位資料行 i、I 整數資料行 第二個字元表示資料行資料大小。
注意
Windows Installer 實際上不會使用指定的資料行大小來限制可輸入字串資料列欄位的字串大小。 不過,有些撰寫工具會使用指定的資料行大小來限制有效字串的大小。 建議輸入任何資料行的字串符合指定的大小需求。
資料行定義 意義 s255 不可為 Null 的字串資料行 255 long L50 可為 Null 的可當地語系化字串資料行 50 長 i2、I2 短整數資料行 i4、I4 長整數資料行
控制字元翻譯
將資料表匯出至文字封存檔案會轉譯控制字元,以避免與檔案分隔符號發生衝突。 寫入 .idt 檔案時,控制字元會轉譯如下。
控制字元 | .idt 中的翻譯 | 意義 |
---|---|---|
NULL | 21 | Null |
BS | 27 | 返回空間 |
HT | 16 | 索引標籤 |
LF | 25 | 換行字元 |
FF | 24 | 表單摘要 |
CR | 17 | 歸位字元 |