原始檔案目的地
更新: 2006 年 4 月 14 日
「原始檔案」目的地會將原始資料寫入檔案。由於資料的格式對於目的地而言是原生的,因此資料不需翻譯,也幾乎不需要剖析。這表示,「原始檔案」目的地可比其他目的地更快地寫入資料,例如「一般檔案」和 OLE DB 目的地。
您可以利用下列方式設定「原始檔案」目的地:
- 指定存取模式,可以是在其中寫入「原始檔案」目的地的檔案名稱或包含該檔案名稱的變數。
- 指示「原始檔案」目的地是將資料附加至具有相同名稱的現有檔案還是建立新檔案。
「原始檔案」目的地通常用於寫入在各個封裝執行之間已部份處理之資料的中介結果。儲存原始資料表示「原始檔案」來源可快速讀取資料,然後在將這些資料載入到其最終目的地前作進一步的轉換。例如,封裝可執行多次,每次均將原始資料寫入檔案。稍後,另一個封裝可使用「原始檔案」來源從每份檔案讀取,並使用「聯集全部」轉換將資料合併到一個資料集中,然後在將這些資料載入到其最終目的地 (例如 SQL Server 2005 資料表) 之前,套用可摘要資料的其他轉換。
附註: |
---|
「原始檔案」目的地支援 Null 資料但不支援二進位大型物件 (BLOB) 資料。 |
附註: |
---|
「原始檔案」目的地不使用連接管理員。 |
此來源具有一個規則輸入。它不支援錯誤輸出。
附加和新增檔案選項
WriteOption 屬性包含將資料附加至現有檔案或建立新檔案的選項。
附註: |
---|
附加作業需要已附加資料的中繼資料,以符合檔案中已有資料的中繼資料。 |
下表描述 WriteOption 屬性的可用選項。
選項 | 描述 |
---|---|
附加 |
將資料附加至現有檔案。附加資料的中繼資料必須符合檔案格式。 |
永遠建立 |
永遠建立新檔案。 |
建立一次 |
建立新檔案。如果該檔案存在,元件就會失敗。 |
截斷與附加 |
截斷一個現有檔案,然後將資料寫入該檔案。附加資料的中繼資料必須符合檔案格式。 |
在迴圈中使用原始檔案目的地
如果使用「原始檔案」目的地的資料流程位於迴圈中,您可以建立一次該檔案,然後在迴圈重複時將資料附加至檔案。若要將資料附加至檔案,附加的資料必須符合現有檔案的格式。
若要在迴圈的第一次反覆運算中建立檔案,然後在迴圈的後續反覆運算中附加資料列,您需要在設計階段執行下列動作:
- 將 WriteOption 屬性設為 [CreateOnce] 或 [CreateAlways] ,然後執行一次迴圈的反覆運算。檔案就會建立,這可確保附加資料的中繼資料與該檔案相符。
- 將 WriteOption 屬性重設為 [Append],並將 ValidateExternalMetadata 屬性設為 False。
如果您使用 [TruncateAppend] 選項,而不是 [Append] 選項,它就會截斷在任何先前反覆運算中新增的資料列,然後附加新的資料列。使用 [TruncateAppend] 選項也要求資料符合檔案格式。
使用不存在之原始檔案的格式
如果您要使用現有原始檔案的格式,但該檔案在執行階段不可用,則可在設計階段指定現有原始檔案,這種方法可取得「原始檔案」目的地所需的中繼資料。在您部署封裝之前,請先將「原始檔案」目的地的 ValidateExternalMetadata 屬性設為 false。在執行階段,會建立一個具有正確格式的新檔案。在此案例中,如果 ValidateExternalMetadata 未設為 false,封裝在執行階段就會驗證失敗。
設定原始檔案目的地
您可以透過「SSIS 設計師」或以程式設計的方式來設定屬性。
[進階編輯器] 對話方塊可反映出可以程式設計方式設定的屬性。如需有關可在 [進階編輯器] 對話方塊中或以程式設計方式設定之屬性的詳細資訊,請按一下下列主題之一:
如需有關如何設定屬性的詳細資訊,請按一下下列主題之一:
請參閱
概念
其他資源
說明及資訊
變更歷程記錄
版本 | 歷程記錄 |
---|---|
2006 年 4 月 14 日 |
|