共用方式為


使用 SQL 配接器流覽、搜尋及取得 SQL 作業的中繼資料

本節提供如何使用取用配接器服務 BizTalk 專案增益集、新增配接器中繼資料精靈和新增配接器服務參考 Visual Studio 外掛程式的相關資訊。 藉由使用這些 Visual Studio 元件,您可以:

  • 流覽要擷取中繼資料的作業。

  • 搜尋要擷取中繼資料的作業。

  • 使用取用配接器服務增益集時,將所選作業和埠系結組態檔的訊息架構新增至BizTalk Server專案。

  • 使用 [新增配接器服務參考外掛程式] 時,將 WCF 用戶端類別或 WCF 服務合約 (介面) ,並將組態檔 (app.config) 新增至非 BizTalk 程式設計專案。

注意

當您流覽和搜尋作業時,取用配接器服務增益集、[新增配接器中繼資料精靈] 和 [新增配接器服務參考外掛程式] 基本上會呈現相同的介面,因此這三個元件都會涵蓋在相同的主題中。

必要條件

您必須先連線至SQL Server,才能流覽、搜尋或擷取目標作業的中繼資料。 如需在使用取用配接器服務增益集、新增配接器中繼資料精靈或新增配接器服務參考外掛程式時如何連線至SQL Server的資訊,請參閱使用取用配接器服務增益集連線到 Visual Studio 中的SQL Server

流覽作業

您可以使用取用配接器服務增益集、新增配接器中繼資料精靈或新增配接器服務參考外掛程式,流覽可使用 SQL 配接器在SQL Server上執行的輸出和輸入作業。

輸出作業

SQL 配接器可讓用戶端執行下列輸出作業。

  • 在資料表和檢視表上插入、選取、更新和刪除作業。

  • 在 < 資料表和檢視表上設定column_name > 作業。 此作業會在具有 Varchar (max) 、Nvarchar (max) 或 Varbinary (max) 的資料表上公開。 這類作業會啟用大型物件的串流處理。

  • 預存程式,以弱式和強型別作為作業。

  • 純量和資料表值函式作為作業。

    配接器也會在根層級公開泛型輸出作業,例如 ExecuteReaderExecuteScalarExecuteNonQuery

輸入作業

SQL 配接器可讓用戶端執行下列輸入作業。

  • 從SQL Server接收輪詢型資料變更訊息的輪詢作業。 針對此作業接收的訊息不是強型別。

  • TypedPolling作業,以接收來自SQL Server的輪詢型資料變更訊息。 針對此作業接收的訊息是強型別。

  • SQL Server接收查詢通知的通知作業。

注意

配接器也支援XmlPolling輸入作業,以使用包含 FOR XML 子句的 SELECT 語句和預存程式,在SQL Server資料庫上啟用輪詢。 不過,配接器不會公開此作業的特定輸入作業。 如需 XmlPolling 的詳細資訊,請參閱使用 BIZTALK SERVER 從 SQL 使用 SELECT 語句與 FOR XML 子句接收輪詢訊息

如需這些作業的詳細資訊,請參閱使用配 接器連線到 SAP 系統

注意

藉由使用取用配接器服務增益集或新增配接器服務參考外掛程式,您可以使用 Windows 介面流覽類別和作業節點。

如需流覽中繼資料的詳細資訊,請參閱使用 SQL 配接器取得 Visual Studio 中SQL Server作業的中繼資料

在 SQL Server 上流覽輸出作業
  1. 使用取用配接器服務增益集、新增配接器中繼資料精靈或新增配接器服務參考外掛程式連線至SQL Server。 如需指示,請參閱使用取用配接器服務增益集連線至 Visual Studio 中的SQL Server

  2. 從 [ 選取合約類型 ] 清單中,針對輸出作業,選取 [ 用戶端 (輸出作業)

  3. [選取類別]方塊會列出您所連線之SQL Server資料庫中可用的成品。 按一下成品,即可在 [ 可用的類別和作業 ] 方塊中檢視該成品可用的作業。

    提示

    您可以直接移至樹狀結構中的「立即」類別節點或子類別節點,方法是輸入成品的名稱,而焦點位於 [ 選取類別 ] 方塊中的樹狀檢視。 例如,若要跳至 Employee 資料表節點,請將焦點保留在 [ 資料表 ] 節點上,然後輸入 Employee

    下圖顯示取用配接器服務增益集。 已選取根節點 (/) ,而根節點下可用的一般類別節點會列在 [ 可用的類別和作業 ] 方塊中。

    3eef7b99-da8e-4b98-8b14-8e48fd7b3801根層級

    注意

    您也可以在根層級取得標準SQL Server作業,例如 ExecuteReader、ExecuteScalar 和 ExecuteNonQuery。 如需這些作業的詳細資訊,請參閱 ExecuteNonQuery、ExecuteReader 和 ExecuteScalar 作業的支援

  4. 若要查看SQL Server資料庫中可用的程式,請按一下 [程式] 節點。 在下圖中,[ 程式 ] 節點會在 [ 選取類別 ] 方塊中選取,而對應的程式會列在 [ 可用的類別和作業] 方塊中。

    流覽 SQL Server 中的程式

    注意

    [ 程式 ] 節點下所列的相同程式集也可在 [強型別程式 ] 節點下取得。 差異在於產生架構的方式。 對於 [ 程式 ] 節點下的程式,架構是弱型別的。 不過,對於 強型別程式 節點下的程式,架構是強型別的。 如果您想要使用 BizTalk 對應程式將某個作業的架構對應至另一個作業,則強型別架構很有用,因為建立 BizTalk 專案時,架構可供您在設計階段使用。 對於弱型別的程式,會在執行時間接收程式的架構作為回應訊息的一部分。

  5. 若要查看SQL Server資料庫中的資料表,請按一下 [資料表] 節點。 或者,展開 [ 資料表 ] 節點。

  6. 若要查看資料表上支援的作業,請按一下資料表名稱。

    下圖顯示 [ 選取類別 ] 方塊中的資料表清單。 [ 可用的類別和作業 ] 方塊會列出所選資料表支援的作業。

    流覽SQL Server資料庫中的資料表

    注意

    如果SQL Server資料表包含 Varchar 類型的資料行 (max) 、Nvarchar (max) ,以及 Varbinary (max) ,配接器也會公開特定作業來更新該資料行中的資料。 此作業的名稱為 [設定 < column_name > ]。 例如,如果資料表具有 Varchar (MAX) 類型的資料行 「Job_Description」,則作業的名稱為 「SetJob_Description」。

  7. 若要查看SQL Server資料庫中的檢視,請按一下 [檢視]節點。 或者,展開 [ 檢視] 節點。

  8. 若要查看檢視上支援的作業,請按一下檢視名稱。

    下圖顯示 [ 選取類別 ] 方塊中的檢視清單。 [ 可用的類別和作業 ] 方塊會列出所選檢視支援的作業。

    流覽SQL Server資料庫中的檢視

    注意

    如果檢視包含 Varchar 類型的資料行 (max) 、Nvarchar (max) ,以及 Varbinary (max) ,配接器也會公開特定作業來更新該資料行中的資料。 此作業的名稱為 [設定 < column_name > ]。 例如,如果資料表具有 Varchar 類型的資料行 「Job_Description」 (max) ,則作業的名稱為 「SetJob_Description」。

  9. 若要查看 [可用類別和作業] 方塊中SQL Server資料庫中定義的純量函式清單,請按一下[純量函式] 節點。

    在下圖中,[選取類別] 方塊中已選取[純量函式] 節點,而對應的函式會列在 [可用的類別和作業] 方塊中。

    78b9f720-2cb2-44a8-b8cc-49e4fb608a1f流覽 SQL Server 函式

  10. 若要查看 [可用類別和作業] 方塊中SQL Server資料庫中定義的資料表值函式清單,請按一下 [資料表值函式] 節點。

    在下圖中,[選取類別] 方塊中已選取 [資料表值函式] 節點,而對應的函式會列在 [可用的類別和作業] 方塊中。

    b007059f-280e-40d7-9553-eca4216296f4流覽 SQL Server 式

流覽SQL Server上的輸入作業
  1. 使用取用配接器服務增益集、[新增配接器中繼資料精靈] 或 [新增配接器服務參考外掛程式] 連接到SQL Server。 如需指示,請參閱使用取用配接器服務增益集連線至 Visual Studio 中的SQL Server

  2. 從 [ 選取合約類型 ] 清單中,針對輸入作業,選取 [服務 (輸入作業)

  3. SQL 配接器支援的所有輸入作業都可在根節點取得。 按一下根節點 (/) ,以檢視可用的輸入作業。

    配接器支援的輸入作業

搜尋作業

您可以使用取用配接器服務增益集、[新增配接器中繼資料精靈] 或 [新增配接器服務參考外掛程式] 來搜尋SQL Server資料庫中的特定成品。 搜尋SQL Server中繼資料時,SQL 配接器:

  • 支援搜尋運算式中的萬用字元和逸出字元。

  • 在執行搜尋作業的節點下立即啟用搜尋。 例如,若要搜尋資料表,您必須在 \Table 底下搜尋。 不支援多層級搜尋。

    下表列出可用於搜尋成品的特殊字元,以及 SQL 配接器的解譯。

特殊字元 解譯 範例
_ (底線) 完全符合一個字元 「A_」 符合 AB、AC、AD。
% 比對零或多個字元 「A%」 符合 A、AB、AC。
[ ] - 逸出 % 和 _ 的特殊意義
- 指定要存在的範圍或一組字元
- %[%]% 符合包含 % 符號的所有名稱。
- [a-f] 符合 (之間具有字元的所有名稱,包括) 'a' 和 'f'。
- [abc] 符合字元為 'a'、'b' 和 'c' 的所有名稱。
[^] 指定不存在的範圍或一組字元 - [^a-f] 符合 (之間沒有字元的所有名稱,包括) 'a' 和 'f'。
- [^abc] 符合沒有字元 'a'、'b' 和 'c' 的所有名稱。

注意

逸出字元是在萬用字元前面放置的字元,表示萬用字元應該解譯為一般字元,而不是萬用字元。

如需詳細資訊,請參閱使用 SQL 配接器取得 Visual Studio 中SQL Server作業的中繼資料

若要使用取用配接器服務增益集在 SQL Server中搜尋中繼資料,請執行下列步驟。

在 SQL Server 中搜尋中繼資料

  1. 使用取用配接器服務增益集、[新增配接器中繼資料精靈] 或 [新增配接器服務參考外掛程式] 連接到SQL Server。 如需指示,請參閱使用取用配接器服務增益集連線至 Visual Studio 中的SQL Server

  2. 從 [ 選取合約類型 ] 清單中,根據您要搜尋輸入和輸出作業,選取合約的類型。

  3. 在 [ 選取類別] 方塊中,按一下您要在其中搜尋特定成品的類別節點。 例如,若要搜尋資料表,請按一下 [ 資料表 ] 節點。

  4. 在 [ 搜尋類別目錄] 方塊中,輸入搜尋運算式來搜尋特定成品。 例如,若要在其名稱中搜尋具有 「Customer」 的資料表,請輸入 %Customer%

    注意

    搜尋字串會區分大小寫。

  5. 若要開始搜尋,請按一下具有向右箭號圖示的按鈕。 搜尋完成後, [可用的類別和作業 ] 方塊會列出符合搜尋準則的成品。

    下圖顯示名稱中包含 「Customer」 的SQL Server資料表。

    62c24ed3-f4e5-47de-8e8d-35af96e6c5ecSQL Server

產生 BizTalk 專案的架構

您可以使用取用配接器服務增益集或 [新增配接器中繼資料精靈] 來產生所選SQL Server成品的架構。 流覽並搜尋您想要叫用的成品之後,您就可以產生這些成品的架構,並傳送符合架構的訊息,以SQL Server。

注意

您可以選取類別節點以傳回該類別子樹狀結構中的所有作業,例如,您可以選取整個資料表 (來產生資料表中所有作業的架構) 或 (資料表上選取的特定作業,例如,插入和刪除) ,只針對資料表上的這些作業產生架構。 如需節點的詳細資訊,請參閱 中繼資料節點識別碼

產生SQL Server成品的架構

  1. 使用取用配接器服務增益集或新增配接器中繼資料精靈連線至SQL Server。 如需指示,請參閱使用取用配接器服務增益集連線至 Visual Studio 中的SQL Server

    重要

    若要使用 BizTalk Server產生執行作業的架構,您必須將EnableBizTalkCompatibilityMode系結屬性設定為True。 您必須在建立與SQL Server資料庫的連線時設定這個系結屬性。

  2. 從 [ 選取合約類型 ] 清單中,根據您產生輸入或輸出作業的架構,選取合約類型。

  3. 按一下您要為其產生中繼資料的類別節點。 例如,如果您想要產生資料表的中繼資料,請按一下 [ 資料表]。

  4. 展開類別節點,然後選取您要為其產生中繼資料的該節點內的特定專案。 例如,若要在 「CustomerTable」 資料表上產生作業的中繼資料,請展開 [ 資料表 ] 節點,然後按一下 [CustomerTable]。

  5. 在 [可用的類別和作業] 方塊中,選取您想要在SQL Server上執行的作業,然後按一下 [新增]。 選取的作業會列在 [ 新增類別和作業 ] 方塊中。 例如,若要在 「CustomerTable」 資料表上執行 Insert 和 Select 作業,請按一下作業名稱,然後按一下 [ 新增]。

    下圖顯示取用配接器服務增益集,其中列出選取的作業。

    從 SQL Server 擷取中繼資料

    如果您想要產生多個作業的架構,這些架構中可能會有一些重複的專案定義,可能會導致編譯 BizTalk 專案失敗。 例如,假設您產生作業 「Op1」 的架構。 「Op1」 的架構包含資料類型 「CT1」 的參數。 產生 「Op1」 的架構之後,您會關閉取用配接器服務增益集,然後重新開啟它,以產生另一個作業 「Op2」 的架構。 假設 「Op2」 也包含資料類型 「CT1」 的參數。 在您結束取用配接器服務增益集並編譯專案之後,您會收到編譯錯誤,因為複雜資料類型 「CT1」 會在不同的 XSD 檔案中定義兩次。 在這種情況下,我們建議使用下列專案:

    • 在單一執行取用配接器服務增益集中產生所有作業的架構。 這可確保取用配接器服務增益集只會針對複雜資料類型 「CT1」 產生一個定義。

    • 如果您想要針對使用配接器服務增益集的不同回合產生多個作業的架構,請確定您選取 [ 產生唯一的架構類型 ] 核取方塊,讓產生的 XSD 檔案包含複雜資料類型 「CT1」 的唯一命名空間。

  6. 按一下 [確定]。 架構檔案會與 BizTalk 專案位於相同位置的 .xsd 副檔名儲存。

    注意

    如果您使用取用配接器服務增益集來產生SQL Server成品的中繼資料,預設會使用特定的命名慣例來建立檔案。 產生的 WSDL 包含 fileNameHint 注釋標籤,其中包含應該指派給 XSD 檔案的名稱。 例如,資料表作業架構檔案的檔案名提示遵循慣例 TableOperation。 <schema > 。 <tablename > 。 如果您想要自訂產生的 XSD 檔案名,您可以在 [檔案名前置詞] 方塊中提供 前置詞 。 最後,XSD 檔案的名稱會視需要以 Filename 前置詞 + fileNameHint + 唯一整數 (抵達,以確保檔案名是唯一的) 。

    注意

    取用配接器服務增益集也會建立系結檔案 (XML 檔案) 包含您在產生作業架構時所指定的系結屬性,以及叫用作業的 SOAP 動作。 您可以在 BizTalk Server 管理主控台中匯入此系結檔案,以使用連線 URI、系結屬性和 SOAP 動作集來建立 WCF-Custom 埠或 BizTalk SQL 配接器埠。 如需詳細資訊,請參閱 使用埠系結檔案設定實體埠系結以使用 SQL 配接器

    您已成功為SQL Server成品產生中繼資料。 您可以使用中繼資料將訊息傳送至SQL Server來執行特定作業。 如需有關如何執行這些作業的詳細資訊 ,請參閱使用 SQL 配接器開發 BizTalk 應用程式

使用新增配接器服務參考外掛程式產生 WCF 用戶端或 WCF 服務合約

您可以使用 [新增配接器服務參考外掛程式] 來產生輸出作業的 WCF 用戶端程式代碼,或輸入作業的 WCF 服務程式代碼。

為SQL Server作業產生 WCF 用戶端類別或服務合約

  1. 在 [新增配接器服務參考外掛程式] 的 [ 選取合約類型 ] 下拉式清單中,根據您要執行輸入和輸出作業,選取合約的類型。

  2. 流覽或搜尋類別 (,例如資料庫資料表) 或您想要產生 WCF 用戶端 (或 WCF 服務合約) 的特定作業。
    例如,若要流覽 Employee 資料表中的作業,請在 [ 選取類別 ] 方塊中:

    1. 展開根節點 () / ,以查看SQL Server資料庫作業呈現所在的類別。

    2. 在根節點下,展開 [ 資料表 ] 節點以查看可用的資料表。

  3. 按一下 [員工 資料表] 節點,然後在 [ 可用的類別和作業 ] 方塊中,選取您要產生 WCF 用戶端 (或 WCF 服務合約) 的作業或類別,然後按一下 [ 新增]。 選取的作業會列在 [ 新增類別和作業 ] 方塊中。

    下圖顯示 [新增配接器服務參考外掛程式],其中已選取 [員工] 資料表的 [插入] 和 [選取] 作業。

    產生 WCF 用戶端或服務合約

    重要

    根據您選取的輸出作業 (或類別) ,可能會產生多個 WCF 用戶端類別。 如需詳細資訊,請參閱為SQL Server成品產生 WCF 用戶端或 WCF 服務合約

  4. 在大部分情況下,預設序列化選項就已足夠;不過,如有需要,您可以控制所產生程式碼的數個層面,以及所使用的序列化程式類型。 若要設定下列選項:

    1. 按一下 [ 進階選項 ] 以開啟 [ 進階選項 ] 方塊。

    2. 在 [ 進階選項 ] 方塊的 [ 選擇所產生 Proxy 的選項] 底下,選取您想要的選項。 例如,您可以選取是否為 WCF 用戶端產生非同步方法,或停用組態檔的產生。

    3. [序列化程式 ] 下,選取應該使用的序列化程式。

      下圖顯示 [ 進階選項 ] 方塊,其中已針對序列化程式選取 [ 自動 (預設 選取專案,且未選取其他選項) 。

      [進階選項] 方塊預設設定

      您可以在 [ 進階選項 ] 方塊中設定的選項相當於當您使用 ServiceModel 中繼資料公用程式工具 (svcutil.exe) 時可用的一些選項。 如需這些選項的詳細資訊,請參閱 ServiceModel 中繼資料公用程式工具 (Svcutil.exe)

  5. 按一下 [確定]。 [新增配接器服務參考外掛程式] 會將 WCF 用戶端類別儲存 (或 WCF 服務介面) ,以及您在專案目錄中選取之作業和類別的協助程式程式碼。 根據預設,組態檔也會儲存。 針對輸入和輸出作業會產生稍微不同的檔案;如需詳細資訊,請參閱為SQL Server成品產生 WCF 用戶端或 WCF 服務合約

    您可以選取 [ 可用類別和作業 ] 方塊中所列的任何節點。 如果您選取類別節點,則會選取該節點下所有可用的作業及其子節點。 例如,若要針對針對 Employee 資料表呈現的所有作業產生 WCF 用戶端,您可以選取 [員工] 節點。

另請參閱

使用 SQL 配接器取得 Visual Studio 中SQL Server作業的中繼資料