NONE TITLE 1.html
Keywords: NONE TITLE,fml, flexible mailing list manager, not listserv style but fmlserv emulates listserv or majordomo style

[______TOC_______] [NEXT CHAPTER]

1 PostgreSQL へのアクセス

    注意: 現在の toymodel は postgresql 7.1 以降では
          うまく動かないようです。理由は off というエントリが
          SQL '99 の規格にある予約語とぶつかっているからです。

          とりあえずの回避策は

    	1. postgresql 7.0.x を使う
    	2. toymodel の off のエントリを他の名前に変える

      TODO:
    	互換性のために現在の toymodel はそのままにし、別途 SQL'99 でも
    	使えるドライバを用意しようと思います。

    1.1	必要なもの

    Pg.pm です。DBI 版もあります。一応 toymodel.pl はまだ Pg.pm 版です。

    	/usr/local/fml/databases/postgresql/Pg_toymodel.pl
    	/usr/local/fml/databases/postgresql/DBI_toymodel.pl

    1.2	config.ph の設定例

    ポイントは

    	$DATABASE_DRIVER

    で指定するファイルです。デフォールトでは LDAP のおもちゃのモデル
    ( 3.0 参照)を使うようになっています。
    PostgreSQL の玩具モデルの見本は

    	/usr/local/fml/databases/postgresql/toymodel.pl

    を見て下さい。このファイルには

    	どのような SQL 文で呼び出すのか
    	エラー処理はどうするのか

    などの泥くさい部分が全て封じ込められています。この toymodel.pl を手本
    に自分の使っているスキーマに合わせて定義を書き換えてみてください。
    そのファイルを

    	/var/spool/ml/etc/fml/mysqldriver.pl

    などをするとよいでしょう。スキーマの詳細はこの中に封じ込めて下さい。
    この場合 config.ph に書くべき項目の見本はこのようになります。

    $USE_DATABASE        = 1;
    $DATABASE_METHOD     = 'PostgreSQL';
    $SQL_SERVER_HOST     = 'postgres.fml.org';
    $SQL_SERVER_USER     = 'fukachan';
    $SQL_DATABASE_NAME   = 'fml';
    $DATABASE_DRIVER     = 'mysqldriver.pl';

    1;

    もしくは FULL PATH でかいてください。

    $DATABASE_DRIVER     = '/var/spool/ml/etc/fml/mysqldriver.pl';

    1.3	some pointers

    http://www.sra.co.jp/people/t-ishii/
    ftp://ring.so-net.ne.jp/
    ftp://ring.asahi-net.or.jp/
    http://member.nifty.ne.jp/hippo2000/

[______TOC_______] [NEXT CHAPTER]