CDBI-P-Itr

Class::DBI::View::HavingとClass::DBI::Plugin::Iterator

Class::DBI::View::HavingとClass::DBI::Plugin::Iterator 併用するとうまく動きませんでした。 調べてみると、Class::DBI::View::Havingに下記のパッチをあてると問題ない模様。 ついでにClass::DBI::Plugin::Iteratorも微調整。 --- Class/DBI/View/Having…

まかまかさん、ありがとうございました。

まかまかさん、ありがとうございました。 動作検証をお願いした形になってしまってすみません。 似たようなものを実装していたみたいだったので、つい……。 importルーチンでドライバの判定をされていて(私も最初そうしたのですが)これだとアプリケーション…

Class::DBI::Plugin::Iteratorの0.10を作ってみた。

Class::DBI::Plugin::Iteratorの0.10を作ってみた。 MySQLの時は自動的にClass::DBI::Plugin::Iterator::mysqlを使い、それ以外の時はClass::DBI::Plugin::Iterator::subqueryを使うように変更しました。 サブクエリが使えない場合はHAVINGを使い、HAVINGも…

自分で告知する前に他所で告知されてしまうのも情けない話ですが*1、

自分で告知する前に他所で告知されてしまうのも情けない話ですが*1、 それよりもtar.gzのバージョンナンバーと$VERSIONが一致していなくってとほほです orz ちなみにバージョンを上げて変わったのはpodの配置を変えたこと*2くらいです。 ちなみに登録が遅く…

2005-01-13

Class::DBI::Plugin::Iterator 0.07 Class::DBI::Plugin::Iterator::subqueryを追加しました。 subqueryのcountを標準にしない理由 ひとつ目には「パフォーマンスが悪そう」という点と、もうひとつは「Class::DBIを使っている人は複雑なクエリーを使わないん…

Class::DBI::Plugin::Iterator 0.06

Class::DBI::Plugin::Iterator 0.06 makamakaさんの指摘による、先読み部分を変更しました。 他の変更点は、allメソッドの実装方法の変更とか、count時のSQLがエラーになった場合の対策あたり。 とりあえず当初考えてたことは一通り実装したので、あとはドキ…

2005-01-10

Class::DBI::Plugin::Iterator 0.05 makamakaさんから指摘があった点をいくつか修正しました。 修正点 とりあえず、 ORDER BY があったら削るGROUP BY があったらCOUNT(DISTINCT cols)にてカウントする ようにしました。 GROUP BYのほうはエイリアスを使って…

Class::DBI::Plugin::Iterator 0.04

Class::DBI::Plugin::Iterator 0.04 とりあえず先読みするようにした。 1件だけ取得するなら前の方がパフォーマンスがいいはず。それでも標準のIteratorよりは良いかな。

2004-12-21

CPANに登録ですか FeedBack にも導入してみようかな。ちなむと、CPAN に up 希望です。Class::DBI のパフォーマンスを上げる Class::DBI::Plugin::Iterator CPANに上げるのはいいんですが、誰かやりかた教えてください。 ――と思ったらこんなドキュメントを発…

Class::DBI::Plugin::IteratorのTips

Class::DBI::Plugin::IteratorのTips 簡単にベンチマークをとったところ、search等*1でマッチした件数に対して実際に使うのが半分以下で、sliceすればほぼ確実にパフォーマンスが上がるみたいです。逆にnext等を使うとかなりパフォーマンスが落ちます。 とい…

Class::DBI::Plugin::Iterator

Class::DBI::Plugin::Iterator ダウンロードできるようにしました。 ちなみにテストは適当です。ドキュメントもありません。 使い方 package Films::FavoriteFilms; use base 'Class::DBI::mysql'; use Class::DBI::Plugin::Iterator; # ←これを追加 __PACKA…

Class::DBI::Plugin::Iterator とか作ってみた

Class::DBI::Plugin::Iterator とか作ってみた ちゃんと1件ずつ取得するようなIteratorを作ってみた。 毎回SQLを発行するので件数が少ないときは重くなる*1。まあ、sliceを使えばその範囲をまとめて取得するので、それほど問題はないでしょう*2。 場合によ…