[pgsql-jp: 37580] Re: now()について

ISHIDA Akio iakio @ mono-space.net
2006年 10月 18日 (水) 01:21:59 JST


こんにちは。石田@苫小牧市です。

06/10/17 に Isamu Kanda<k_isamu @ topaz.plala.or.jp> さんは書きました:
> はじめましてhideです。
> 下記はnow()にto_charを使い書式を変更したあとにINSERT文を実行しています。
> 言語はperlです。
>
> #=====更新日時=====
> $result4 = $conn->exec("SELECT to_char(now(), 'yyyy.mm.dd hh24:mi:ss')");
> if ($result2->ntuples <= 0){
>     exit;
> }
> $date = $result4->getvalue(0,0);
>
> #=====INSERT実行=====
> $result3 = $conn->exec("INSERT INTO bp_inquiry
> (inquiry_id,bp_cat_id,serial_id,product_name,status,customers_email_address,cus
> tomers_name,message,entry_date,up_date) VALUES
> (nextval('bp_inquiry_seq'),'$bp_cat_id','$name', '$honbun',now())");
>

まず、これは意図した通りに動いていますか?
bp_inquiry に 10 個の列が指定されていますが
VALUES には 5 個の値しか指定されていません。

最近のバージョンの PostgreSQL ではエラーになると思います。
(古いバージョンだと、エラーにはならず後半の 5 つのカラムは NULL に
なったかもしれません)。

> ----------------------------------------------------------------------
>
>
> 下記は上記の二つの文をひとつの文にしようとして実行してみようと思ったのですが、実行できません。
> 二つの文にして実行していくしかないのでしょうか?
> 申し訳ありませんがアドバイスをお願いします。
>
> #=====1つにしてINSERTを実行=====
> $result3 = $conn->exec("INSERT INTO bp_inquiry
> (inquiry_id,bp_cat_id,serial_id,product_name,status,customers_email_address,cus
> tomers_name,message,entry_date,up_date) VALUES
> (nextval('bp_inquiry_seq'),'$bp_cat_id', '$name', '$honbun',to_char(now(),
> 'yyyy.mm.dd hh24:mi:ss'))");
>
>


-- 
ISHIDA Akio <iakio @ mono-space.net/ishida @ cycleof5th.com>



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