Share via


クエリの実行 (ODBC)

ODBC アプリケーションでは、接続ハンドルを初期化してデータ ソースに接続した後、その接続ハンドルに 1 つ以上のステートメント ハンドルを割り当てます。その後、割り当てたステートメント ハンドルで、MicrosoftSQL Server ステートメントを実行できます。次に、SQL ステートメントを実行するときの一般的な手順を示します。

  1. 必要なステートメント属性を設定します。

  2. ステートメントを構築します。

  3. ステートメントを実行します。

  4. 任意の結果セットを取得します。

アプリケーションは、SQL ステートメントから返されたすべての結果セット内にあるすべての行を取得した後、同一ステートメント ハンドルで別のクエリを実行できます。また、特定の結果セット内にあるすべての行を取得する必要がないと判断した場合、SQLMoreResults または SQLCloseCursor を呼び出すことによって残りの結果セットをキャンセルできます。

ODBC アプリケーションで、異なるデータを使用して同じ SQL ステートメントを複数回実行する必要がある場合は、SQL ステートメントの構築時に、次のように疑問符 (?) で表されるパラメータ マーカーを使用します。

INSERT INTO MyTable VALUES (?, ?, ?)

その後、SQLBindParameter を呼び出すことにより、各パラメータ マーカーをプログラム変数にバインドできます。

アプリケーションは、すべての SQL ステートメントの実行と結果セットの処理を完了後、ステートメント ハンドルを解放します。

SQL Server Native Client ODBC ドライバでは、接続ハンドルごとに複数のステートメント ハンドルをサポートします。また、トランザクションは接続レベルで管理されます。これにより、1 つの接続ハンドルのすべてのステートメント ハンドルで実行されるすべての作業が、同一のトランザクションの一部として管理されます。