[pgsql-jp: 36761] PEAR:autoExecute を使うためには?

Nakamura Kazuto kazuto @ sainet.or.jp
2006年 2月 23日 (木) 16:21:23 JST


中村と申します。

PHP4 - PEAR にある DB_common::autoExecute() という関数を使いたいのですが
現状うまく行っていません。
http://pear.php.net/manual/ja/package.database.db.db-common.autoexecute.php

恐らくテーブルの作り方が悪いのだと思いますが、この関数をうまく動作させる
ためにはどのようなテーブル構築をすればいいのでしょうか?
オートナンバーをやめ、ID を手動で取得してやればいいのかもしれませんが
それではこの関数を使う意味が無くなってしまうので serial は使いたいの
のですが…

● テーブル
CREATE TABLE news (
  id serial PRIMARY KEY,
  date timestamp,
  subject text NOT NULL,
  body text NOT NULL
) ;

● 実行部
$res = $dbh->autoExecute( "news", $data, DB_AUTOQUERY_INSERT);
if (PEAR::isError($res)) {
    die($res->getMessage());
}

● 結果
DB Error: unknown error
配列 $data には [date][subject][body] が正しく入っているのを
print_r で確認しました。

● 環境
OS : FreeBSD 3.4 (テスト環境なので古いです)
postgreSQL : 7.2 (同上)
PHP4 : 4.3.11 (4.3系最新)

宜しくお願い致します。

--
中村  和人  kazuto @ sainet.or.jp



pgsql-jp メーリングリストの案内