アプリケーション開発の手引き

接続と切断

DB2 コネクトは、パラメーターなしの CONNECT だけでなく、 CONNECT TO および CONNECT RESET もサポートしています。アプリケーションが明示的な CONNECT TO ステートメントを実行せずに SQL ステートメントを呼び出すと、省略時のアプリケーション・ サーバー (定義されている場合) への暗黙の 接続が実行されます。

データベースに接続すると、 SQLCA の SQLERRP フィールドにリレーショナル・データベース管理システムを識別する情報が戻されます。アプリケーション・サーバーが IBM のリレーショナル・データベースである場合、 SQLERRP の先頭の 3 文字には次のいずれかが含まれます。

DSN
DB2 ユニバーサル・データベース (OS/390 版)

ARI
DB2 (VSE および VM 版)

QSQ
DB2 ユニバーサル・データベース (AS/400 版)

SQL
DB2 ユニバーサル・データベース

DB2 コネクトの使用中に CONNECT TO ステートメントまたは NULL の CONNECT ステートメントを発行する場合、 SQLCA の SQLERRMC フィールドに戻る国別コードまたは領域トークンはブランクになります。アプリケーション・サーバーの CCSID は、コード・ページまたはコード・セット・トークンとして戻されます。

CONNECT RESET ステートメント (タイプ 1 の接続の場合)、 RELEASE および COMMIT ステートメント (タイプ 2 の接続の場合)、または DISCONNECT ステートメント (いずれのタイプの接続にも使用できるが、 TP モニター環境では使用できない) を使用して、明示的に切断を行えます。

接続が明示的に切断されていないのに、アプリケーションを通常のように終了すると、 DB2 コネクトは結果データを暗黙にコミットします。
注:アプリケーションがエラーを示す SQLCODE を受け取っても、正常に終了することができます。この場合、DB2 コネクトはデータをコミットします。データをコミットしたくない場合は、ROLLBACK コマンドを使用してください。

FORCE コマンドを使用すると、選択したユーザーまたはすべてのユーザーをデータベースから切断することができます。これは、AS/400 サーバー・データベースでサポートされています。ユーザーは、DB2 コネクト・ワークステーションから強制的に切断されます。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]