如何:使用資料列集繫結 (ODBC)
使用資料行取向的繫結
針對每個繫結資料行,請執行下列動作:
配置 R (或更多) 個資料行緩衝區的陣列以儲存資料值,其中 R 是資料列集的資料列數目。
或者,配置 R (或更多) 個資料行緩衝區的陣列來儲存資料長度。
呼叫 SQLBindCol 將資料行的資料値和資料長度陣列繫結至資料列集的資料行。
呼叫 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],以保存資料列狀態指標。
執行此陳述式。
每次呼叫 SQLFetch 或 SQLFetchScroll 都會擷取 R 個資料列,並將資料傳送到繫結的資料行。
使用資料列取向的繫結
配置結構的陣列[R],其中 R 是資料列集的資料列數目。結構中每個資料行都具有一個元素,而每個元素則具有兩部分:
第一個部分是適當資料類型的變數,可保存資料行資料。
第二個部分是 SQLINTEGER 變數,可保存資料行狀態指標。
呼叫 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],以保存資料列狀態指標。
針對結果集的每個資料行呼叫 SQLBindCol,以將資料行的資料値及資料長度指標,指向它們在步驟 1 所配置之結構陣列第一個元素中的變數。
執行此陳述式。
每次呼叫 SQLFetch 或 SQLFetchScroll 都會擷取 R 個資料列,並將資料傳送到繫結的資料行。