ステートメント ハンドルの解放 (ODBC)
前に説明したように、ステートメントは、削除して新しいハンドルを割り当てるよりも、再利用する方が効率的です。 アプリケーションでは、任意のステートメントで新しい SQL ステートメントを実行する前に、現在のステートメント設定が適切であることを確認する必要があります。 確認する設定には、ステートメント属性、パラメーター バインド、結果セットのバインドがあります。 一般に、古い SQL ステートメントのパラメーターと結果セットは、(SQLFreeStmt を SQL_RESET_PARAMS オプションと SQL_UNBIND オプションを指定して呼び出すことによって) バインドを解除し、新しい SQL ステートメントに対してバインドし直す必要があります。
ステートメントを使い終わると、アプリケーションは SQLFreeHandle を呼び出してステートメントを解放します。 ステートメントを解放した後、ODBC 関数の呼び出しでこのステートメントのハンドルを使用するとアプリケーション プログラミング エラーになります。そうすると、定義されていないがおそらく致命的な結果が生じます。
SQLFreeHandle が呼び出されると、ドライバーはステートメントに関する情報を格納するために使用される構造体を解放します。
SQLDisconnect は、接続のすべてのステートメントを自動的に解放します。