DBIx::Simple
DBIx::Simpleがいい感じです。
普段はDBIC使うとして、複雑なSQLを実行しなければいけない場合、
DBI直でやったりしますが、DBIx::Simpleつかえばいい感じでかけます。
DBI直でもいいのですがOO風味でかけるのがうれしげ。
こんなん。すげー適当ですけど。
#! /usr/bin/perl use strict; use warnings; use Data::Dumper; use DBIx::Simple; my $db = DBIx::Simple->connect('dbi:mysql:test_dbic','hoge','moge') or die DBIx::Simple->error; for my $row ( $db->query('SELECT id FROM blog')->hashes ) { print Dumper $row; } my $ret = $db->query('SELECT id,title FROM blog')->map_hashes('id'); warn Dumper $ret; $db->abstract; $ret = $db->select( 'blog', '*',{ title => \'IS NOT NULL', } )->hashes; warn Dumper $ret;
map_hashesとかがかなり楽しげ。
SQL::Abstractもつかえますが、SQLを直で書く場合用で考えたほうがいいかな。
ふむ。ちょっとやりたいことが思いついた。