Acme-BeyondPerl-ToSQL
view release on metacpan or search on metacpan
lib/Acme/BeyondPerl/ToSQL.pm view on Meta::CPAN
_connect($dsn, $user, $pass, $opt) unless($Dbh);
_overload();
overload::constant (
integer => \&_integer_handler,
float => \&_float_handler,
);
if(defined $hash{debug}){ $DEBUG = $hash{debug}; }
}
my $OPs = {
'+' => sub { shift->add(@_) },
'-' => sub { shift->sub(@_) },
'*' => sub { shift->mul(@_) },
'/' => sub { shift->div(@_) },
'%' => sub { shift->mod(@_) },
lib/Acme/BeyondPerl/ToSQL.pm view on Meta::CPAN
my $value = 5;
print 2 + $value , "\n"; # 7
print 1.2 - 0.2 , "\n"; # 1
print 9 / 2 , "\n"; # 4.5
# DEBUG MODE
# use Acme::BeyondPerl::ToSQL ({
# dbi => ["dbi:SQLite:dbname=acme_db","",""], debug => 1,
# });
#
# SELECT 1.2000000000000000 - 0.2000000000000000
# SELECT 9.0 / 2.0
# SELECT 2.0 + 5.0
# use Acme::BeyondPerl::ToSQL ({
# dbi => ["dbi:Pg:dbname=$dbname;host=$host", $user, $pass], debug => 1,
# });
#
# SELECT CAST(1.2 AS double precision) - CAST(0.2 AS double precision)
# SELECT CAST(9 AS double precision) / CAST(2 AS double precision)
# SELECT CAST(2 AS double precision) + CAST(5 AS double precision)
=head1 DESCRIPTION
When you use C<Acme::BeyondPerl::ToSQL>, your RDBMS will calculate
instead of Perl!
lib/Acme/BeyondPerl/ToSQL.pm view on Meta::CPAN
=item Acme::BeyondPerl::ToSQL ($dsn, $user, $pass, $opts)
To use DBI, you must pass some arguments.
use Acme::BeyondPerl::ToSQL ("dbi:SQLite:dbname=acme_db","","");
use Acme::BeyondPerl::ToSQL
("dbi:Pg:dbname=$dbname;host=$host", $user, $pass, \%opts);
=item Acme::BeyondPerl::ToSQL ({dbi => $arrayref, debug => $true_or_false})
use Acme::BeyondPerl::ToSQL ({
dbi => ["dbi:SQLite:dbname=acme_db","",""],
debug => 1,
});
=back
=head1 EXPORT
None.
=head1 BUGS
lib/Acme/BeyondPerl/ToSQL/Pg.pm view on Meta::CPAN
$user = 'foo';
$pass = 'bar';
}
use Acme::BeyondPerl::ToSQL ("dbi:Pg:dbname=$dbname;host=$host", $user, $pass);
# or
use Acme::BeyondPerl::ToSQL ({
dbi => ["dbi:Pg:dbname=$dbname;host=$host", $user, $pass],
debug => 1
});
=head1 DESCRIPTION
This module implements a PostgreSQL version for Acme::BeyondPerl::ToSQL.
You don't need to use this module directly.
=head1 SEE ALSO
L<Acme::BeyondPerl::ToSQL>,
lib/Acme/BeyondPerl/ToSQL/SQLite.pm view on Meta::CPAN
Acme::BeyondPerl::ToSQL::SQLite - SQLite support for Acme::BeyondPerl::ToSQL
=head1 SYNOPSIS
use Acme::BeyondPerl::ToSQL ("dbi:SQLite:dbname=acme_db","","");
# or
use Acme::BeyondPerl::ToSQL ({
dbi => ["dbi:SQLite:dbname=acme_db","",""], debug => 1,
});
=head1 DESCRIPTION
This module implements a SQLite version for Acme::BeyondPerl::ToSQL.
You don't need to use this module directly.
=head1 SEE ALSO
L<Acme::BeyondPerl::ToSQL>,
lib/Acme/BeyondPerl/ToSQL/mysql.pm view on Meta::CPAN
$user = 'foo';
$pass = 'bar';
}
use Acme::BeyondPerl::ToSQL ("dbi:mysql:dbname=$dbname;host=$host", $user, $pass);
# or
use Acme::BeyondPerl::ToSQL ({
dbi => ["dbi:mysql:dbname=$dbname;host=$host", $user, $pass],
debug => 1
});
=head1 DESCRIPTION
This module implements a MySQL version for Acme::BeyondPerl::ToSQL.
You don't need to use this module directly.
=head1 SEE ALSO
L<Acme::BeyondPerl::ToSQL>,
t/01-base.t view on Meta::CPAN
use Test::More tests => 32;
use DBI;
use strict;
use Acme::BeyondPerl::ToSQL({
dbi => ["dbi:SQLite:dbname=acme_db","",""],
debug => 0,
});
my $value = 10;
isa_ok($value, 'Acme::BeyondPerl::ToSQL');
ok(defined $value);
is($value, 10);
$value = $value * 2;
( run in 1.134 second using v1.01-cache-2.11-cpan-49f99fa48dc )