Perl+mySQLメモ

2015年8月10日 DB
Java+mySQL でバインド変数が使用できなかったので、他言語で試してみた。
一応メモ。
DB接続
my $dbh = DBI->connect(’DBI:mysql:DB name’,’user’,’password’);
print $dbh;
実行時にエラー発生
Available drivers: CSV, DBM, ExampleP, File, Gofer, ODBC, Oracle, Pg, Proxy, SQLite, Sponge.

最初は接続できなかったので調べると、どうもモジュール不足らしい。
コマンドプロンプトで
ppm install DBD::mysql

再実行
DBI::db=HASH(0x2704380)

データ取得後に文字化け発生、エンコードを試みる。
use Jcode;

だがJcodeが見つからないとエラーが出る。
Jcodeをインストール
perl -MCPAN -e shell
install Jcode

これを使う度に小飼弾さんは偉大だなぁと思う。
再実行したが文字化けが直らない。
doメソッドで文字コードを指定する。
set names utf8

バインド変数を指定してSQLを実行
select * from table_name where column = :1

エラーが出る。どうもmySQLは:1ではダメらしい。
バインド変数を直してして再実行
select * from table_name where column = ?

これだと上手くいく。


Perlだと成功したけど、もしかしてJava+mySQL(ODBC)だとバインド変数ダメなのか…?

コメント

最新の日記 一覧

<<  2025年6月  >>
1234567
891011121314
15161718192021
22232425262728
293012345

お気に入り日記の更新

この日記について

日記内を検索