by Hippo2000(2000/8/8)
日本語チョウ訳シリーズ Apache::Session::Store::Oracleモジュールなのです。
Apache::Session::Store::Oracle - Oracleデータベースに永続データを格納する
use Apache::Session::Store::Oracle;
my $store = new Apache::Session::Store::Oracle;
$store->insert($ref); $store->update($ref); $store->materialize($ref); $store->remove($ref);
Apache::Session::Store::OracleはApacheの格納インターフェースを完全に満たします。セッション・データはOracleデータベースに格納されます。
このモジュールを使うために、'sessions'というテーブルに少なくともこれらのカラムが必要です:
id varchar2(32) # またはセッションIDの長さ分 a_session long
このスキーマを作成するために、sqlplusプログラムを使って以下のコマンドを実行することが出来ます:
CREATE TABLE sessions (
id varchar2(32) not null primary key,
a_session long
);
もし他のコマンドを使うのであれば、テーブルのIDカラムにユニークなインデックスを作るのを忘れないで下さい。
このモジュールはデータベースに接続するときに使われるデータソース、ユーザ名、パスワードを知る必要があります。これらの値はオプションのハッシュ(Apache::Sessionドキュメントをご覧下さい)を使って設定することが出来ます。そのオプションはDataSource, UserName, そしてPasswordです。
例:
tie %hash, 'Apache::Session::Oracle', $id, {
DataSource => 'dbi:Oracle:database',
UserName => 'database_user',
Password => 'K00l'
};
代りに既にデータベースにオープンされているDBIハンドルを渡すことが出来ます:
tie %hash, 'Apache::Session::Oracle', $id, {
Handle => $dbh
};
最後のオプションはLongReadLenです、これはセッション・オブジェクトの最大サイズを指定します。指定されなければ、デフォルトの最大サイズは8KBです。
(原文のまま)
This modules was written by Jeffrey William Baker <jwbaker@acm.org>
A fix for the commit policy was contributed by Michael Schout <mschout@gkg.net>
Apache::Session, Apache::Session::Store::DBI
ご意見、ご質問はこちらの掲示板で受け付けています。
またメールは河馬屋(Nifty)にお願いします。