DB2 CLI バージョン 5 以降におけるこの関数の状況
注: |
ODBC バージョン 3 では、SQLFreeConnect() は使用すべきではありません。代わりに、SQLFreeHandle() に置き換えられています。詳細については、SQLFreeHandle - ハンドル資源を解放するを参照してください。
このバージョンの DB2 CLI でも引き続き SQLFreeConnect() をサポートしていますが、 SQLFreeHandle() の使用を DB2 CLI プログラムから開始するなら最新の規格に適合できるため、この方法をお勧めします。
上記の関数と、その他の使用すべきでない関数の詳細については、 バージョン 5 で使用すべきでない DB2 CLI 関数を参照してください。 |
新しい関数への移行
たとえば、次の旧ステートメント
SQLFreeConnect(hdbc);
は、新しい関数を使用して、以下のように書き換えます。
SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
目的
仕様: | DB2 CLI 1.1 | ODBC 1.0 | ISO CLI |
SQLFreeConnect() は、接続ハンドルを無効にし、解放します。接続ハンドルに関連したすべての DB2 CLI 資源が解放されます。
この関数を呼び出す前に、SQLDisconnect() を呼び出す必要があります。
構文
SQLRETURN SQLFreeConnect (SQLHDBC hdbc);
関数引き数
データ・タイプ | 引き数 | 使用法 | 説明 |
---|---|---|---|
SQLHDBC | hdbc | 入力 | 接続ハンドル |
使用法
接続がまだ存在しているときにこの関数を呼び出すと、 SQL_ERROR が返され、接続ハンドルはそのまま有効です。
終了を継続するには、SQLFreeEnv() を呼び出すか、または新しい接続ハンドルが必要であれば SQLAllocConnect() を呼び出してください。
戻りコード
診断
SQLSTATE | 説明 | 解説 |
---|---|---|
58004 | 予期しないシステム障害です。 | 回復不能システム・エラー。 |
HY001 | メモリーの割り振り失敗です。 | DB2 CLI は、関数の実行または完了をサポートするのに必要なメモリーを割り振ることができません。 |
HY010 | 関数の順序エラーです。 | hdbc の SQLDisconnect() を呼び出す前に、この関数を呼び出しました。 |
HY013 | 予期しないメモリーのハンドル・エラーが起きました。 | DB2 CLI は、関数の実行または完了をサポートするのに必要なメモリーを使用することができませんでした。 |
制約
なし。
SQLFreeHandle - ハンドル資源を解放するを参照してください。
参照