資料連線簡介

重要:  本文係由機器翻譯而成,請參閱免責聲明。本文的英文版本請見這裡,以供參考。

Microsoft Office InfoPath 表單和儲存或提供該表單的資料的外部資料來源之間動態連結的資料連線。資料來源是欄位和群組的定義及儲存表單資料集合。控制項繫結到資料來源中欄位和群組和使用者顯示的資料。

表單可以具有一個主要資料連線 (稱為主要資料連線),也可以具有一個或多個次要資料連線。根據表單的目的而定,資料連線可能會查詢或送出表單資料給外部資料來源,如 Microsoft SQL Server 資料庫或 Web 服務。

本文內容

資料連線的概觀

使用主資料連線

使用 [次要資料連線

儲存供離線使用的資料

連線到外部資料來源的考量因素

資料連線概觀

資料連線是表單與資料來源 (用於儲存或提供該表單的資料) 之間的動態連結。表單可以具有一個主要資料連線 (稱為主要資料連線),也可以具有一個或多個次要資料連線。主要資料連線可定義表單的主要資料來源。XML 結構描述可描述資料儲存在表單主要資料來源的方式。表單只能具有一個主要資料連線,而當您根據外部資料來源建立表單範本時,會自動建立主要資料連線。但在設計表單範本時,要建立幾個次要資料連線都可以。

根據表單的目的而定,您可以建立外部資料來源的主要或次要資料連線,如 Microsoft SQL Server 資料庫或 Web 服務。外部資料來源是一個資料儲存區,可傳送資料到以表單範本為基礎的表單,或從中接收資料。InfoPath 會使用下列的外部資料來源:

  • Microsoft Office Access 資料庫

  • Microsoft SQL Server 資料庫

  • Web 服務

  • 執行 Microsoft Windows SharePoint Services 之伺服器上的文件庫或清單

  • XML 檔

您可以對外部資料來源建立三種資料連線:僅查詢資料、僅送出資料或同時查詢及送出資料。查詢資料連線會從資料來源接收資料,並且將該資料儲存在表單中。送出資料連線會將來自表單的資料傳送到資料來源、到Web 伺服器上的應用程式、到執行 Microsoft Windows SharePoint Services 之伺服器上的文件庫,或是電子郵件訊息中。查詢及送出資料連線會接收來自資料來源的資料,並且將資料傳送到資料來源。當您建立資料連線時,必須指定您想要的資料連線類型。例如,您可以建立會執行下列其中一項的資料連線:

  • 查詢資料庫的資料

  • 在電子郵件訊息送出表單資料

  • 將表單資料送出到 Web 伺服器上的應用程式

  • 將表單資料送出到使用 XmlFormView 控制項的自訂應用程式

  • 透過自訂程式碼 (如 C#、Microsoft Visual Basic .NET 或 Microsoft JScript) 查詢或送出資料。

  • 在執行 Microsoft Office SharePoint Server 2007 的伺服器上使用儲存在資料連線庫中的連線設定。

  • 查詢或送出資料到 Microsoft BizTalk Server 2004 或 BizTalk Server 2006 上的 Human Workflow Services。

您使用的連線類型會根據表單的目標以及您要將表單連線到的外部資料來源類型而定。

查詢資料連線

查詢資料連線取得外部資料來源的資料,並將該資料儲存表單的主要或次要資料來源中的欄位。然後,您可以繫結控制項至表單中顯示該資料這些欄位。您可以透過下列方式建立的查詢資料連線︰

  • 以資料庫、Web 服務或儲存在連線庫中的設定為基礎,設計表單範本。外部資料來源的結構會定義表單的主要資料來源。

  • 新增可查詢資料庫、Web 服務、SharePoint 清單或程式庫或 XML 檔的次要資料連線,以修改現有的表單範本。

當您設計的新表單範本是以資料庫、Web 服務或連線庫中的設定為基礎時,您建立的查詢資料連線會成為以該表單範本為基礎之表單的主要資料連線。您只可以將一個查詢資料連線定義為表單範本的主要資料連線。如果需要查詢其他資料來源的資料,您可以建立次要資料連線來查詢那些資料來源的資料。本文稍後將告訴您有關次要資料連線的詳細資訊。

當您新增次要資料連線以查詢表單範本的資料時,可以指定每次使用者開啟表單或當使用者填寫表單時發生了特定事件後 (如按一下按鈕顯示選項清單),InfoPath 是否應該使用資料連線。若要在特定事件發生後使用資料連線,請使用下列其中一種方法:

  • 插入按鈕控制項,更新表單中的資料。

  • 當表單符合某個條件時,新增規則來使用資料連線。

  • 為特定事件撰寫自訂程式碼。

送出資料連線

當使用者送出表單時,該表單的資料會透過送出資料連線而傳送到外部資料來源。您可以設定表單範本允許使用者傳送資料到下列類型的外部資料來源:

  • Microsoft Office Access 資料庫

  • Microsoft SQL Server 資料庫

  • Web 服務

您也可以新增次要資料連線,以下列方式送出資料:

  • 送出表單資料到執行 Microsoft Windows SharePoint Services 之伺服器上的文件庫。

  • 在電子郵件訊息送出表單資料。

  • 將表單資料送出到 Web 伺服器上的應用程式。

以下列方式建立送出資料連線:

  • 以資料庫、Web 服務或儲存在執行 Office SharePoint Server 2007 之伺服器上的連線庫中的設定為基礎,設計新的表單範本。外部資料來源的結構會定義表單的主要資料來源。

  • 新增次要資料連線以修改現有的表單範本,然後設定表單範本允許使用者透過此次要資料連線來送出表單。

    提示: 當您設計的表單範本是以 Office Access 或 SQL Server 資料庫為基礎時,若資料庫符合某些需求時,InfoPath 會自動設定送出資料連線。如需這些需求的詳細資訊,請參閱「請參閱」一節中的連結。如果您希望使用者使用其他類型的送出資料連線來送出完成的表單,您可以選擇停用「送出」功能。

在大部分情況下,您會設定為主要送出表單範本的動作,請提交資料連線。不過,您可以設計表單範本,讓使用者可以使用 [規則] 或 [自訂程式碼送出完成的表單,到多個位置。例如,您可以設定允許送出完成的表單至 Web 服務,以及透過電子郵件的使用者表單範本。一般而言,您可以設定的所有資料表單中提交的表單範本。不過,如果您使用自訂程式碼將表單資料送出,或您要設定表單範本,讓表單資料送出到 Web 服務,您可以送出表單資料的一部分。

查詢及送出資料連線

當您設計的表單範本是以資料庫或 Web 服務為基礎時,您可以建立一個資料連線,從資料庫或 Web 服務取得資料及送出資料。如果您設計的表單範本是以資料庫為基礎,則資料連線可以取得或送出資料。不過,為了讓以此表單範本為基礎的表單能夠送出資料到資料庫,則必須符合下列需求:

  • 您設計的不是與瀏覽器相容的表單範本。

  • 主要資料連線中的所有資料表都必須含有主索引鍵、唯一限制或唯一索引。

  • 查詢中的所有資料表必須具有簡單的階層式關聯。

  • 表單之主要資料來源中的資料欄位都不能儲存大型二進位資料類型。

您可以進一步瞭解連線到外部資料來源的考量本文稍後的需求。

可從中取得及送出資料到 Web 服務的資料連線就好像將查詢資料連線與送出資料連線結合在單一資料連線中一樣。

頁面頂端

使用主要資料連線

主要資料連線可以建立表單之主要資料來源的連線。XML 結構描述可描述結構,以將資料儲存在表單的主要資料來源中。您可以使用 [資料來源] 工作窗格來設計資料來源,或者讓 InfoPath 在您新增控制項到表單範本時,自動建立資料來源。您也可以設計以外部資料來源為基礎的表單範本,而該範本會定義主要資料來源的結構。一個表單範本只能有一個主要資料連線。

如果主要資料連線連接到外部資料來源,則您使用主要資料連線的方式會根據所連接的資料來源類型而定。

資料庫   當您設計資料庫為基礎的表單範本時,則 InfoPath 會建立的查詢,您也可以將該資料庫的資料送出主資料連線。如果將填寫表單使用 InfoPath 資料庫符合考量連線到外部資料來源] 區段中所列的需求,InfoPath 自動建立送出資料連線,並設定為允許使用者送出表單的表單範本。如果將填寫表單使用瀏覽器,InfoPath 就不會建立資料庫的送出資料連線。在瀏覽器相容表單範本中不支援送出資料至資料庫的資料連線。

提示: 如果將使用瀏覽器來填寫表單,而且您想要送出資料到資料庫,可以將表單連線到可送出資料到資料庫的 Web 服務,來進行這項作業。

Web 服務    當您設計以 Web 服務為基礎的表單範本時,您可以建立主要資料連線,此連線會同時查詢及送出資料、只查詢資料或只送出資料。如果您選擇送出資料,InfoPath 會自動設定表單範本允許使用者送出表單。您可以指定是要送出部分的表單資料,還是送出所有的表單資料。如果只送出部分資料,您可以根據 Web 服務的需求而定,指定特定群組中哪些欄位含有應該送出的資料。

當您設計以資料庫或 Web 服務為基礎的表單範本時,InfoPath 會建立主要資料來源,當中的查詢欄位、資料欄位及群組會對應至資料庫或 Web 服務儲存資料的方式。查詢欄位包含的值會使用查詢資料連線,在查詢中擷取資料庫的資料。查詢的結果會放入資料欄位中,而當使用者開啟表單時可以編輯這些欄位。當使用者送出表單時,會使用送出資料連線來傳送資料欄位中的資料。因為主要資料來源中的欄位及群組必須符合外部資料來源儲存資料的方式,所以您無法修改這些欄位及群組。不過,您可以新增欄位或群組到主要資料來源的根欄位中。

若要讓使用者能夠檢視、選取、編輯或送出資料欄位中的資料,您可以將控制項 (如文字方塊及核取方塊) 繫結到表單中的欄位。如果要查詢並顯示可供使用者選取的其他值,可以將控制項 (如清單方塊) 繫結到查詢欄位。如果想讓使用者選取清單中的值,可以將控制項 (如清單方塊) 繫結到資料欄位,然後設定控制項的屬性,以顯示次要資料來源的值或主要資料來源中重複的欄位。

頁面頂端

使用次要資料連線

次要資料連線可將表單連線到外部資料來源。在您需要查詢或送出表單資料到不在主要資料連線中的外部資料來源時,或者當您想讓使用者送出資料到多個外部資料來源時,次要資料連線非常好用。您要建立幾個次要資料連線都可以。

次要資料連線可以查詢或送出資料到下列類型的外部資料來源:

  • Office Access 資料庫

  • SQL Server 資料庫

  • Web 服務

  • 執行 Windows SharePoint Services 之伺服器上的文件庫或清單

  • XML 檔

使用次要資料連線,您也可以讓使用者送出表單資料到 Web 伺服器上的應用程式、到執行 Windows SharePoint Services 之伺服器上的文件庫,或透過電子郵件訊息傳送。

如果您建立的次要資料連線可查詢資料,依預設在表單開啟時,表單會使用此資料連線。您也可以下列方式設定表單範本,以使用此資料連線:

  • 新增更新按鈕到表單範本,讓使用者可以按一下來傳送查詢。

  • 新增規則到表單範本,以使用此資料連線查詢資料來源。

  • 新增自訂程式碼到傳送查詢的表單範本。

當您新增次要資料連線到表單時,InfoPath 會自動建立次要資料來源,而當中的資料欄位及群組會符合外部資料來源儲存資料的方式。這有助於確保資料的完整性。您無法修改次要資料來源中的欄位及群組。

頁面頂端

儲存資料供離線使用

當您新增次要資料連線來查詢外部資料來源的資料時,您可以設定連線將查詢結果儲存在使用者的電腦上。這樣可確保使用者在電腦未連線到網路時,還是可填寫表單。這稱為離線工作。

如果您是以此方式設定次要資料連線,當使用者的電腦連線到網路時,就會將查詢傳送到外部資料來源。然後查詢的結果會儲存在表單的次要資料來源中,當使用者填寫表單時就會在表單中顯示查詢結果。每次使用者執行新的查詢時,都會快取資料,如此一來資料就能盡可能地保持最新狀態。

InfoPath 在決定儲存的資料是否適合指定的查詢時,會考量查詢參數。建立資料連線時,您可以選擇是否要在表單中顯示預設的儲存資料組,以免無法使用資料來源。您應考量來自查詢的資料是否適合所有使用者,或者表單是否應該顯示每位使用者專用的資料。例如,如果查詢傳回的資料是根據使用者的身分識別或角色,使用在設計時期設定的預設資料組,而不使用可能會導致該使用者資料錯誤的查詢結果。

頁面頂端

連線到外部資料來源的考量

InfoPath 支援下列外部資料來源類型的資料連線:

  • Office Access 資料庫

  • SQL Server 資料庫

  • Web 服務

  • 執行 Microsoft Windows SharePoint Services 之伺服器上的文件庫或清單

  • XML 檔

下面幾節會告訴您要連線至每個外部資料來源的資訊及考量。

Microsoft Office Access 或 SQL Server 資料庫

InfoPath 支援 Access 資料庫及 SQL Server 資料庫的資料連線。若要連線到其他種類的資料庫,您可以使用與該資料庫配合使用的 Web 服務。

表單可以透過主要或次要資料連線來查詢資料庫中的資料,而且您要選擇連線幾個資料庫資料表都可以。您選取的第一個資料表為主要資料表。之後選取的所有資料表都必須含有與主要資料表相關的欄位。InfoPath 會嘗試比對兩個資料表中的欄位名稱來設定此關聯性。您可以選擇使用此關聯性或在建立資料連線時新增自己的資料表關聯性。

表單可以送出表單的主資料連線到資料庫的資料,如果表單範本為基礎的表單和資料庫符合下列需求︰

  • 表單範本已無法在瀏覽器相容表單範本   如果您要設計瀏覽器相容表單範本 InfoPath 不會在主要的資料連線建立送出資料連線。若要允許使用者在瀏覽器相容表單範本為基礎的表單資料送出,使用 Web 服務的運作方式與資料庫。

  • 左的資料表關聯資料表的主資料來源中的每一對包含主索引鍵   至少一個的每一組相關資料表的關聯性必須包含從左側資料表的主索引鍵。

  • 無表單市集大型的二進位資料類型的主資料來源中的資料欄位   如果查詢包含可以儲存大型的二進位資料類型,例如圖片、 圖像、 OLE 物件、 檔案附件,Office Access 備忘資料類型或 SQL 文字資料類型的欄位,則 InfoPath 會停用送出資料連線。

如果表單範本及資料庫符合所有上述需求,InfoPath 就會建立送出資料連線並且設定表單範本,允許使用者送出表單。如果您想讓使用者透過不同的資料連線來送出表單資料,可以停用主要資料連線中的送出資料連線。

當您設計以資料庫為基礎的表單範本時,InfoPath 會建立主要資料來源,當中的查詢欄位與資料欄位會符合資料庫儲存資料的方式。InfoPath 也會將 [執行查詢][新增記錄] 按鈕新增到表單範本的預設檢視中。使用者按一下 [執行查詢] 按鈕時,InfoPath 會傳送查詢欄位中帶有資料的查詢到資料庫。[新增記錄] 按鈕則會清除表單中目前所有的資料,並且將繫結到資料欄位的控制項設定為資料欄位的預設值。當使用者送出資料到資料庫時,資料欄位中的資料若有任何變更,資料庫中的對應記錄也會隨之變更。如果使用者刪除資料欄位中的資料,則也會從資料庫刪除對應的記錄。最後,已加入資料欄位中的所有資料會更新對應的欄位,或新增對應的記錄到資料庫中。

如果您要將表單連線到資料庫,而且已建立表單的主要資料連線,您可以新增次要資料連線來查詢資料庫。新增次要資料連線時,InfoPath 會建立次要資料來源,當中的查詢欄位、資料欄位及群組會符合資料庫資料表中的欄位。您可以像在主要資料連線中所做的一樣,選取多個資料庫資料表並且建立資料表關聯性。

當您建立次要資料連線來查詢資料時,可設定連線在每次使用者開啟表單時傳送查詢,或者可以執行下列其中一項來傳送查詢:

  • 新增按鈕,使用者按一下即可更新資料連線中的資料。

  • 建立規則以使用資料連線傳送查詢。

  • 撰寫會在執行時傳送查詢的自訂程式碼。

Web 服務

表單可以透過主要或次要資料連線來查詢或送出資料到 Web 服務。InfoPath 遵循下列連線到 Web 服務的標準:

  • 簡易物件存取通訊協定 (SOAP)    SOAP 是一種通訊協定,可定義用來與 Web 服務通訊的 XML 訊息。

  • Web 服務描述語言 (WSDL)    WSDL 是一種 XML 結構描述標準,用來描述 Web 服務的位置、通訊協定及介面。InfoPath 只可以使用 Document Literal 樣式的 Web 服務。

  • 通用描述、探索與整合 (UDDI)    UDDI 是一種目錄服務,可描述企業提供的 Web 服務。

當您設計以 Web 服務為基礎的新表單範本時,InfoPath 會建立 Web 服務的主要資料連線,然後建立主要資料來源,當中的查詢欄位、資料欄位及群組會符合 Web 服務的 XML 結構描述。

如果您設定表單範本使用相同 Web 服務中的另一個作業,或您想使用全然不同的 Web 服務,可以新增次要資料連線到表單範本中。新增可查詢資料的次要資料連線時,InfoPath 會建立次要資料來源,當中的欄位及群組會符合 Web 服務的結構描述。如果您新增可送出資料的次要資料連線,您可根據 Web 服務中的參數而定,設定連線傳送表單中所有或部分的資料。

建立主要或次要資料連線到 Web 服務時,您可以指定連線是否只能查詢資料、只能送出資料或可同時查詢及送出資料。如果連線可查詢資料,InfoPath 會新增 [執行查詢] 按鈕到表單範本。使用者按一下 [執行查詢] 按鈕時,InfoPath 會傳送查詢欄位中帶有資料的查詢到 Web 服務。如果連線可送出資料,InfoPath 會啟用表單的「送出」功能。設定送出資料連線時,InfoPath 會判定 Web 服務所需的資料。根據該項資訊,您可以指定表單範本中哪些欄位應送出資料到 Web 服務。

SharePoint 網站上的文件庫或清單

表單可以透過次要資料連線,查詢在執行 Windows SharePoint Services 之伺服器上文件庫或清單的資料。表單也可以送出資料到伺服器上的文件庫。您無法透過主要資料連線來連線到文件庫或清單。

如果您建立的次要資料連線可查詢文件庫或清單中的資料,InfoPath 為表單建立的次要資料來源則會符合文件庫或清單中的欄。

如果您建立的次要資料連線可送出資料到文件庫,而且您想要這個送出資料連線成為表單範本的主要送出動作,您必須啟用表單範本的「送出」功能,並且使用 [送出選項] 對話方塊 ([工具] 功能表的 [表單送出選項] 命令),將「送出」功能與資料連線產生關聯。依預設,表單中的所有資料會透過送出資料連線予以送出。如果您只想送出部分資料,可以撰寫表單範本的自訂程式碼來這麼做。

XML 檔

表單可以透過次要資料連線查詢 XML 檔的資料。例如,您可以將 Microsoft Office Excel 工作表儲存為 XML 檔,然後使用次要資料連線在表單中查詢及顯示該檔案的資料。您也可以使用次要資料連線來查詢 XML 檔中的資料,以便從傳回 XML 之 Web 伺服器上的應用程式 (如 Microsoft ASP.NET 應用程式、通用閘道介面 (CGI) 指令碼,或者是使用網際網路伺服器應用程式發展介面 (ISAPI) 的應用程式) 擷取資料。

Web 伺服器上的應用程式

您可以建立次要資料連線,送出資料到 Web 伺服器上的應用程式,如 ASP.NET 應用程式、CGI 指令碼或是使用 ISAPI 的應用程式。若要送出資料到 Web 伺服器上的應用程式,您必須設定表單範本允許使用者送出表單資料,並且選取 [送出選項] 對話方塊中的 [Web 伺服器 (HTTP)] ([工具] 功能表的 [送出選項] 命令),設定資料連線的送出選項。

附註: 表單只可以有一個資料連線負責送出資料到 Web 伺服器上的應用程式。您無法設定表單範本允許表單使用規則,送出資料到 Web 伺服器上的應用程式。

資料連線庫中的連線設定

如果數個表單使用相同或類似的資料連線,請考慮將每個資料連線的設定儲存在執行 Office SharePoint Server 2007 之伺服器上資料連線庫的資料連線檔案中。資料連線檔案是一個 XML 檔,含有單一外部資料來源的連線資訊,而且具有 .xml 或 .udcx 副檔名。使用者開啟會連線到資料連線檔案的表單時,InfoPath 會使用該檔案中的設定來連線到外部資料來源。使用資料連線檔案的好處包含下列:

  • 多個表單可以使用同一個資料連線檔案,所以不需要為每個表單重頭建立一樣的資料連線。

  • 如果外部資料來源的位置或連線設定改變,您只需要更新資料連線檔案,而不需更新每個表單範本。

  • 當使用者使用瀏覽器填寫表單時,資料連線檔案可以包含伺服器可使用的其他驗證資料。

  • 如果表單中的所有資料連線都使用資料連線檔案,在瀏覽器中填寫的表單雖沒有信任的安全性層級,還是可以連線到其他網域中的電腦。

若要將表單連線到資料連線檔案,則此檔案必須儲存在執行 Office SharePoint Server 2007 之伺服器上的資料連線庫中,而且必須遵照通用資料連線 (UDC) 2.0 版檔案格式。

附註: UDC 2.0 檔案格式是 Microsoft Office FrontPage 所使用之 1.0 版的超集合。InfoPath 無法使用 1.0 版本格式的資料連線檔案。 如需資料連線庫及資料連線檔案的詳細資訊,請參閱「請參閱」一節中的連結。

頁面頂端

附註: 機器翻譯免責聲明︰本文係以電腦系統翻譯而成,未經人為介入。Microsoft 提供此等機器翻譯旨在協助非英語系使用者輕鬆閱讀 Microsoft 產品、服務及技術相關內容。基於本文乃由機器翻譯而成,因此文中可能出現詞辭、語法、文法上之錯誤。

擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×