Web モジュールへのセッションの追加

提供: RAD Studio
移動先: 案内検索

応答でのデータベース情報の使用 への移動


コンソール CGI アプリケーションは、HTTP 要求メッセージに応答して起動されます。これらの種類のアプリケーションでデータベースを操作する際には、デフォルト セッションを使用してデータベースの接続を管理できます。これは、要求メッセージごとに専用のアプリケーション インスタンスが生成されるからです。アプリケーション インスタンスごとに、異なる専用のデフォルト セッションが用意されます。

ただし、ISAPI アプリケーションや NSAPI アプリケーションを作成する場合は、各要求メッセージは単一のアプリケーション インスタンスの別個のスレッドで処理されます。異なるスレッドからのデータベース接続が互いに干渉しないようにするには、スレッドごとに専用のセッションを割り当てる必要があります。

ISAPI アプリケーションや NSAPI アプリケーションでは、要求メッセージごとに新しいスレッドが生成されます。そのスレッドの Web モジュールは実行時に動的に生成されます。Web モジュールに TSession オブジェクトを追加すると、その Web モジュールが入っているスレッドのデータベース接続を処理できます。

実行時にスレッドごとに別個の Web モジュール インスタンスが生成されます。これらのモジュールごとに、セッション オブジェクトが割り当てられます。別個の要求メッセージを処理するスレッドどうしが互いのデータベース接続に干渉しないように、これらのセッションごとに、別個の名前を付ける必要があります。各モジュール内のセッション オブジェクトに自分自身の一意な名前を動的に生成させるには、セッション オブジェクトの AutoSessionName プロパティを True に設定します。各セッション オブジェクトが自分自身の一意な名前を動的に生成し、モジュール内のすべてのデータセットの SessionName プロパティがその一意な名前を参照するように設定します。これにより、要求スレッドごとに、データベースとのすべてのやり取りを、他のどの要求メッセージにも干渉されずに進めることができます。セッションの詳細については、「データベース セッションの管理」を参照してください。

関連項目