共用方式為


使用資料列集系結 (ODBC)

適用於: SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)

若要使用數據行型系結

  1. 針對每個系結數據行,請執行下列動作:

    • 配置 R (或更多) 資料行緩衝區數位儲存資料值,其中 R 是資料列集中的數據列數目。

    • 您可以選擇性地設定 R (或更多) 資料行緩衝區陣列來儲存資料長度。

    • 呼叫 SQLBindCol ,將數據行的數據值和數據長度陣列集資料行。

  2. 呼叫 SQLSetStmtAttr 以設定下列屬性:

    • 將SQL_ATTR_ROW_ARRAY_SIZE設定為數據列集 (R) 中的數據列數目。

    • 將 [SQL_ATTR_ROW_BIND_TYPE] 設定為 [SQL_BIND_BY_COLUMN]。

    • 將 SQL_ATTR_ROWS FETCHED_PTR 屬性設定為指向 SQLUINTEGER 變數,以保存擷取的數據列數目。

    • 將SQL_ATTR_ROW_STATUS_PTR設定為指向 SQLUSSMALLINT 變數的陣列[R],以保存資料列狀態指標。

  3. 執行語句。

  4. 每個對 SQLFetchSQLFetchScroll 的呼叫都會擷取 R 數據列,並將數據傳輸到系結的數據行。

若要使用數據列系結

  1. 配置結構的陣列[R],其中 R 是數據列集中的數據列數目。 結構針對每個數據行都有一個元素,而每個元素都有兩個部分:

    • 第一個部分是適當數據類型的變數,用來保存數據行數據。

    • 第二個部分是用來保存數據行狀態指標的 SQLINTEGER 變數。

  2. 呼叫 SQLSetStmtAttr 以設定下列屬性:

    • 將SQL_ATTR_ROW_ARRAY_SIZE設定為數據列集 (R) 中的數據列數目。

    • 將SQL_ATTR_ROW_BIND_TYPE設定為步驟 1 中所配置之結構的大小。

    • 將 SQL_ATTR_ROWS_FETCHED_PTR 屬性設定為指向 SQLUINTEGER 變數,以保存擷取的數據列數目。

    • 將SQL_ATTR_PARAMS_STATUS_PTR設定為指向 SQLUSSMALLINT 變數的陣列[R],以保存數據列狀態指標。

  3. 針對結果集中的每一個數據行,呼叫 SQLBindCol ,將數據值和數據長度指標指向在步驟 1 中配置之結構陣列的第一個元素中,數據行的數據值和數據長度指標。

  4. 執行語句。

  5. 每個對 SQLFetchSQLFetchScroll 的呼叫都會擷取 R 數據列,並將數據傳輸到系結的數據行。

另請參閱

使用資料指標操作說明主題 (ODBC)
如何實作資料指標
使用資料指標 (ODBC)