[PHP-users 2147] Re: SJIS->EUC bug ?
Yasuo Ohgaki
php-users@php.gr.jp
Tue, 18 Sep 2001 18:16:36 +0900
大垣です。
私もPostgreSQLを使っているので気になり試して見ました。
> で、当館で運用しておりますWeb蔵書検索において、書名に
> 「箱」(EUC:C8A2) 、「柊」(EUC:C9A2)、「國」(EUC:D4A2)を
> 指定しますと、pg_execが正常終了しないと言う現象が起きています。
> # ごらんの通り、2バイト目がA2のヤツがおかしい。
もしかして以下のようなSQL文をPostgreSQLに渡していませんか?
$sql = 'SELECT * FROM some_table WHERE some_field = "箱"';
Warning: PostgreSQL query failed: ERROR: Attribute '箱' not found in
/home/yohgaki/public_html/test/bug/moji-bake/test.php on line 8
$sql = "SELECT * FROM some_table WHERE some_field = '箱'";
としないとエラーになります。
PostgreSQLの文字列はSingle Quoteで囲む物と思っていたのでDouble Quoteは
今まで使った事が無かったので私はこのようなエラーを今まで経験したことが
ありませんでした。Single Quote以外の例も見た記憶がありません。
どうでしょうか?
--
Ohgaki, Yasuo (大垣 靖男)
Mail: yohgaki@dd.iij4u.or.jp