共用方式為


Excel 目的地

更新: 2007 年 9 月 15 日

Excel 目的地會將資料載入至 Microsoft Excel 活頁簿中的工作表或範圍。

ms137643.note(zh-tw,SQL.90).gif附註:
在 64 位元電腦上,您必須在 32 位元模式下執行連接到 Microsoft Excel 資料來源連接的封裝,但連接到 Excel 資料來源的 Microsoft Jet OLE DB Provider 只適用於 32 位元版本。
ms137643.note(zh-tw,SQL.90).gif附註:
若要將資料載入至使用 Microsoft Office Excel 2007 的資料來源,請使用 OLE DB 目的地。您無法使用 Excel 目的地,連接至 Excel 2007 資料來源。如需詳細資訊,請參閱<Excel 連接管理員>。

Excel 目的地提供三種不同的資料存取模式用於載入資料:

  • 資料表或檢視。
  • 在變數中指定的資料表或檢視。
  • SQL 陳述式的結果。查詢可以是參數化查詢。
ms137643.note(zh-tw,SQL.90).gif重要事項:
在 Excel 中,工作表或範圍相當於資料表或檢視。「Excel 來源」及「Excel 目的地」編輯器中的可用資料表清單,僅會顯示現有工作表 (以附加到工作表名稱的 $ 符號識別,例如 Sheet1$) 及具名範圍 (以沒有 $ 符號的方式識別,例如 MyRange)。

Excel 目的地會使用 Excel 連接管理員,以連接到資料來源,而連接管理員會指定要使用的活頁簿檔案。如需詳細資訊,請參閱<Excel 連接管理員>。

Excel 目的地擁有一個規則輸入與一個錯誤輸出。

使用狀況的考量

「Excel 連接管理員」會使用 Microsoft OLE DB Provider for Jet 4.0 及其支援的 Excel ISAM (Indexed Sequential Access Method,索引循序存取方法) 驅動程式,連接和讀寫資料至 Excel 資料來源。

許多現有的「Microsoft 知識庫」文件都有記錄此提供者和驅動程式的行為,而即使這些文件並非 Integration Services 或其前置的「資料轉換服務」專用,您仍會想瞭解可能導致未預期結果的特定行為。如需有關 Excel 驅動程式之使用與行為的一般資訊,請參閱<如何從 Visual Basic 或 VBA 搭配使用 ADO 與 Excel 資料>。

在將資料儲存至 Excel 目的地時,下列隨附於 Excel 驅動程式之 Jet 提供者的行為可能會導致非預期的結果。

  • 儲存文字資料。將文字資料值儲存至 Excel 目的地時,Excel 驅動程式會在每個資料格的文字前面加上單引號字元 ('),以確保儲存的值會被解譯為文字值。如果您擁有或開發讀取或處理儲存值的其他應用程式,您可能必須包含加在每個文字值前面的單引號字元的特殊處理。
  • 儲存備忘錄 (ntext) 資料。為了順利將長度超過 255 個字元的字串儲存到 Excel 資料行,驅動程式必須將目的地資料行的資料類型識別為 memo,而非 string。如果目的地資料表已經包含資料,則驅動程式取樣的前幾個資料列必須在備忘錄資料行中至少包含一個長度超過 255 個字元的值。如果在封裝設計階段或執行階段期間封裝建立目的地資料表,CREATE TABLE 陳述式則必須使用 LONGTEXT 或它的其中一個同義字來做為備忘錄資料行的資料類型。
  • 資料類型。Excel 驅動程式只能辨識有限的一組資料類型。例如,所有的數值資料行都會被解譯為倍整數 (DT_R8),而所有的字串資料行 (備忘錄資料行除外) 全都會被解譯成 255 個字元的 Unicode 字串 (DT_WSTR)。Integration Services 對應 Excel 資料類型的情況如下:
    • 數值 – 雙精度浮點數 (DT_R8)
    • 貨幣 – 貨幣 (DT_CY)
    • 布林值 – 布林值 (DT_BOOL)
    • 日期/時間 – 日期 (DT_DATE)
    • 字串 – Unicode 字串,長度 255 (DT_WSTR)
    • 備忘錄 – Unicode 文字資料流 (DT_NTEXT)
  • 資料類型和長度轉換。Integration Services 不會隱含轉換資料類型。因此,您可能必須使用衍生的資料行轉換或資料轉換,在將 Excel 資料載入到非 Excel 目的地之前明確轉換 Excel 資料,或是在將非 Excel 資料載入到 Excel 目的地之前轉換資料。在這種情況下,使用「匯入和匯出精靈」建立初始封裝可能很有用,因為這個精靈會為您設定必要的轉換。某些轉換範例可能必須包含下列各項:
    • Unicode Excel 字串資料行與具有特定字碼頁之非 Unicode 字串資料行之間的轉換。
    • 255 個字元之 Excel 字串資料行與不同長度之字串資料行之間的轉換。
    • 雙精度 Excel 數值資料行與其他類型之數值資料行之間的轉換。

設定 Excel 目的地

您可以透過「SSIS 設計師」或以程式設計的方式來設定屬性。

如需有關 [Excel 目的地編輯器] 對話方塊中可設定之屬性的詳細資訊,請按下列其中一個主題:

[進階編輯器] 對話方塊會反映能以程式設計的方式設定之所有屬性。如需有關可以在 [進階編輯器] 對話方塊中或以程式設計方式設定之屬性的詳細資訊,請按下列其中一個主題:

如需有關如何設定屬性的詳細資訊,請按下列其中一個主題:

如需有關循環使用一組 Excel 檔案的資訊,請參閱<如何:循環使用 Excel 檔案和資料表>。

請參閱

工作

如何:循環使用 Excel 檔案和資料表

概念

Excel 來源
Integration Services 變數
建立封裝資料流程
64 位元電腦上的 Integration Services 考量

其他資源

Integration Services 目的地
Working with Excel Files with the Script Task

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2007 年 9 月 15 日

新增內容:
  • 新增有關如何使用 64 位元電腦來執行連接到 Excel 資料來源之封裝的附註。
  • 說明儲存備忘錄資料的結果。

2006 年 12 月 12 日

新增內容:
  • 新增有關 Excel 2007 資料來源的使用附註。

2006 年 4 月 14 日

新增內容:
  • 新增處理 Excel 之新主題的連結。

2005 年 12 月 5 日

變更的內容:
  • 擴充並重寫整個<使用狀況考量>一節,以釐清已知的問題。