いつのまにか、DBD-PgPPのバージョンがあがってた

5年ぶり? 知らないうちに0.06になっていた
今回のバージョンアップでかなりまともなモジュールになったみたいですよ(・ω・)

何も考えずにバージョンアップするとさっそくエラーが…

先に言っておくと、私のプログラムがダメダメだったわけですが

Can't call method "parse_statement" on an undefined value at C:/Perl/site/lib/DBD/PgPP.pm line 194.

194行目はpackage DBD::PgPP::dbのprepareメソッドの中
parse_statementは0.06から増えたメソッドみたいで、DBD::PgPP::Protocolパッケージのparse_statement(742行目)のこと
DBD::PgPP::Protocolは DBD::PgPP::drパッケージのconnectでnewされていて、DBD::PgPP::Protocolのインスタンスは$dbh->FETCH('pgpp_connection')で呼びだされる
普通に使ったらparse_statementが定義されてないってことにはならないはずだけど…
自分のプログラム見直したら、クエリを送る前にdisconnectしてる部分有り(;´Д`)!!
つーか、今までのバージョンのPgPPのdisconnectは飾りだったのか(return 1って)
すごいプログラム使ってたな…
このparse_statementのおかげで、プレースホルダを使わないクエリに?が含まれていた場合にもプレースホルダの?と認識されておかしなことになっていたのが、改善されたらしいです