[PHP-users 5875] Re: 【解決】特定の文字で挿入・更新エラー(PEAR DB.php )

Yusuke Gunji php-users@php.gr.jp
Tue, 05 Mar 2002 02:10:09 +0900


グンジです。

掲題の件、解決いたしました。お騒がせいたしました。
経緯のほどをご報告いたします。

まず、先ほど投稿したメールで認識が違っていたものがあるので
記述します。

:【現象】
<snip>
:・コンソール上から直接psqlでデータベースに接続し、
:  insert into t1 (v1) values ('株式会社');
:  とやると正常に登録される。
:
:・pg_xxxxxを使用すると問題なくInsert等できる。
ここですが、
insert into tbl (v1) values ('株')
とすると、
Warning: PostgreSQL query failed: \
   ERROR: Unterminated quoted string in \
   /home/****/****.php on line 15
という形でエラーがかえりました。
同様に、コンソール上で行っても
ERROR:  parser: parse error at or near "株'"
と言うエラーになりました。

いろいろ試してみたところ、
文字列の最後に 株 があるとエラーが起こるようで
postgresの設定に問題があったようです。

いろいろ調べてみましたら、
CLIENTENCODINGがSJISに設定されており、
それをEUC_JPに変換したところ、
正常にインサートできました。
WindowsクライアントでAccessをつかってデータを
整理しようと考えていたため、\encoding SJIS としたのですが、
それがやぶ蛇だったようです。


-- 
Yusuke Gunji
+ cross@gun-z.net
+ http://www.gun-z.net (Haven't done yet)