SQL::FormatYet yet another SQL builder | |
Download |
SQL::Format Ranking & Summary
Advertisement
- License:
- Perl Artistic License
- Price:
- FREE
- Publisher Name:
- Yuji Shimada
- Publisher web site:
- http://search.cpan.org/~xaicron/
SQL::Format Tags
SQL::Format Description
SQL::Format is an easy to SQL query building library.SYNOPSIS use SQL::Format; my ($stmt, @bind) = sqlf 'SELECT %c FROM %t WHERE %w' => ( , # %c 'foo', # %t { hoge => 'fuga', piyo => , }, # %w ); # $stmt: SELECT `bar`, `baz` FROM `foo` WHERE (`hoge` = ?) AND (`piyo` IN (?, ?, ?)) # @bind: ('fuga', 100, 200, 300); ($stmt, @bind) = sqlf 'SELECT %c FROM %t WHERE %w %o' => ( '*', # %c 'foo', # %t { hoge => 'fuga' }, # w { order_by => { bar => 'DESC' }, limit => 100, offset => 10, }, # %o ); # $stmt: SELECT * FROM `foo` WHERE (`hoge` = ?) ORDER BY `bar` DESC LIMIT 100 OFFSET 10 # @bind: (`fuga`) ($stmt, @bind) = sqlf 'UPDATE %t SET %s' => ( foo => { bar => 'baz', 'hoge => 'fuga' }, ); # $stmt: UPDATE `foo` SET `bar` = ?, `hoge` = ? # @bind: ('baz', 'fuga') my $sqlf = SQL::Format->new( quote_char => '', # do not quote limit_dialect => 'LimitXY', # mysql style limit-offset ); ($stmt, @bind) = $sqlf->select(foo => , { hoge => 'fuga', }, { order_by => 'bar', limit => 100, offset => 10, }); # $stmt: SELECT bar, baz FROM foo WHERE (hoge = ?) ORDER BY bar LIMIT 10, 100 # @bind: ('fuga') ($stmt, @bind) = $sqlf->insert(foo => { bar => 'baz', hoge => 'fuga' }); # $stmt: INSERT INTO foo (bar, hoge) VALUES (?, ?) # @bind: ('baz', 'fuga') ($stmt, @bind) = $sqlf->update(foo => { bar => 'xxx' }, { hoge => 'fuga' }); # $stmt: UPDATE foo SET bar = ? WHERE hoge = ? # @bind: ('xxx', 'fuga') ($stmt, @bind) = $sqlf->delete(foo => { hoge => 'fuga' }); # $stmt: DELETE FROM foo WHERE (hoge = ?) # @bind: ('fuga')Product's homepage
SQL::Format Related Software