分享方式:


使用 SQL 語句 (ODBC)

使用語句

  1. 使用SQL_HANDLE_STMT的 HandleType 呼叫 SQLAllocHandle,以配置語句句柄。

  2. 或者,呼叫 SQLSetStmtAttr 來設定語句選項或 SQLGetStmtAttr 以取得語句屬性。

    若要使用伺服器資料指標,您必須將資料指標屬性設定為預設值以外的值。

  3. 或者,如果語句將執行數次,請準備語句以使用 SQLPrepare 函式執行。

  4. 或者,如果語句具有係結參數標記,請使用 SQLBindParameter 將參數標記系結至程式變數。 如果已備妥語句,您可以呼叫 SQLNumParamsSQLDescribeParam 來尋找參數的數目和特性。

  5. 使用 SQLExecDirect 直接執行語句。

    (或)

    如果已備妥語句,請使用 SQLExecute 執行多次。

    (或)

    呼叫傳回結果的目錄函式。

  6. 將結果集數據行系結至程式變數、使用 SQLGetData 將數據從結果集數據移至程式變數,或兩種方法的組合,以處理結果。

    一次擷取一個數據列之語句的結果集。

    (或)

    使用區塊數據指標一次擷取數個數據列的結果集。

    (或)

    呼叫 SQLRowCount 以判斷 INSERT、UPDATE 或 DELETE 語句所影響的數據列數目。

    如果 SQL 語句可以有多個結果集,請在每個結果集的結尾呼叫 SQLMoreResults ,以查看是否有其他要處理的結果集。

  7. 處理結果之後,可能需要下列動作,讓語句句柄可供執行新的語句:

    • 如果您在傳回SQL_NO_DATA之前未呼叫 SQLMoreResults ,請呼叫 SQLCloseCursor 以關閉數據指標。

    • 如果您將參數標記系結至程式變數,請呼叫 SQLFreeStmt ,並將 Option 設定為 SQL_RESET_PARAMS釋放係結參數。

    • 如果您將結果集數據行系結至程式變數,請呼叫 SQLFreeStmt ,並將 Option 設定為 SQL_UNBIND釋放系結的數據行。

    • 若要重複使用語句句柄,請移至步驟 2。

  8. 使用SQL_HANDLE_STMT的 HandleType 呼叫 SQLFreeHandle,以釋放語句句柄。

另請參閱

執行查詢作說明主題 (ODBC)