_Streams資料表

_Streams資料表會列出內嵌的 OLE 資料流程。 這是臨時表,只有在SQL語句參考時才建立。

資料行 類型 答案 Nullable
Name Text Y N
資料 二進位 N Y

 

資料行

名字

識別資料流程的唯一索引鍵。 Name 的最大長度為 62 個字元。

資料

未格式化的二進位資料。

備註

例如,若要複製 OLE 資料流程 (, 二進位 資料類型的物件) 從檔案複製到資料庫中,請在 _Streams 資料表中建立記錄,並將資料流程的名稱輸入到此記錄的 Name 資料行,然後使用 MsiRecordSetStream將資料從檔案複製到 Data 資料行。 使用 MsiViewModify 將新記錄插入資料表中。

若要讀取內嵌在資料庫中的二進位資料流程,請使用SQL查詢來尋找並擷取包含二進位資料的記錄。 使用 MsiRecordReadStream 將二進位資料讀入緩衝區。

若要將二進位資料流程從某個資料庫移到另一個資料庫,請先將資料匯出至檔案。 使用SQL查詢來尋找檔案中的資料流程,並使用MsiRecordSetStream將資料從檔案複製到第二個資料庫的 _Streams 資料表的 Data 資料行。 這可確保每個資料庫都有自己的二進位資料複本。 您只要從第一個資料庫擷取具有資料的記錄,並將它插入第二個資料庫,就無法將二進位資料從某個資料庫移到另一個資料庫。

若要刪除資料流程,請先擷取記錄,並將 [資料] 資料行設定為 Null,再更新記錄。 另一個方法是從資料表中移除記錄,並使用MsiViewModify或純SQL查詢加以刪除。 如果資料流程從資料表中刪除,則不應該將資料流程擷取到記錄中。

若要重新命名 OLE 資料流程,請更新記錄的 [名稱] 資料行。

如果使用 ALTER TABLE 將保留放在此資料表上SQL (

HOLD) 或具有 HOLD 的資料行新增,必須使用 FREE 釋放資料表。 在發行或認可資料表之前,不會寫入資料流程。