mysql:9926
From: "Mamiya Masataka" <"Mamiya Masataka" <xc8m-mmy@xxxxxxxxxx>>
Date: Thu, 29 Jul 2004 13:44:15 +0900
Subject: [mysql 09926] Re: perl による検索処理での日本語取り扱い(Win32,S-JIS)
谷口さん、情報をありがとうございます。
qq{} の区切り文字 {} の Shift-JIS 文字コードの問題で発生しているのですね。
ありがとうございます。
その後、google で検索などをして、
s/\\/\\\\/ig
とエスケープしてやればうまく行くこともわかりました。
Windows で Shift-JIS 文字コードを利用する場合、
思わぬところでトラブルが起きて焦ります。
谷口さん、最後の
> print qq{間\x8B{};
>
> と等価で、中括弧の対応が合いません。DBI を使われるという事で
> あれば、プレースホルダを使われたほうが良いかと思います。
>
は、ちょうど疑問に思っていた点にズバリの情報でした。
本当にありがとうございます。
複数の条件で抽出したいと考えていたのですが、
条件が 「間宮」または「正孝」と言うような場合、
$sth = $dbh->prepare (qq{
SELECT Field1 FROM mamiya00 WHERE Field5 like '%間宮%' or Field5 like '%正孝%'
});
と二つ条件を付加するしかないのかなー。
でもこれでは固定的で、自由に条件を追加したり減らしたり出来ないという事で
foreach (@fukusuu_jyouken) {
$sth = $dbh->prepare (qq{
SELECT Field1 FROM mamiya00 WHERE Field5 like '%$_%'
});
$sth -> execute ()
or &error ('MySQL コマンドを実行出来ません。');
}
という方法を代替案として考えていました。
でも、これではあまりに効率が悪いので、何か良い方法がないものかと苦慮していました。
メーリングリストに次の質問としてメールしてみようと考えていたところでしたので、
本当にありがとうございました。
--
Mamiya masataka from IBARAKI JAPAN
*************************************
mailto:mamiya@xxxxxxxxxx
[間宮林蔵の世界へようこそ]
http://www.asahi-net.or.jp/~XC8M-MMY/
[りんぞー.メール 地域のニュース]
http://www.rinzo2.jp
[携帯メール連絡網]
http://www.rinzo.jp/mail/
*************************************
9922 2004-07-29 10:13 ["Mamiya Masataka" <x] perl による検索処理での日本語取り扱い(Win32,S-JIS) 9924 2004-07-29 11:26 ┗[Koichi Taniguchi <ta] -> 9926 2004-07-29 13:44 ┗["Mamiya Masataka" <x]