Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
Name: perl-SQL-Abstract | Distribution: SUSE Linux Enterprise 15 SP6 |
Version: 2.000001 | Vendor: openSUSE |
Release: bp156.3.1 | Build date: Sat Jul 22 12:08:29 2023 |
Group: Unspecified | Build host: lamb25 |
Size: 360993 | Source RPM: perl-SQL-Abstract-2.000001-bp156.3.1.src.rpm |
Packager: https://bugs.opensuse.org | |
Url: https://metacpan.org/release/SQL-Abstract | |
Summary: Generate SQL from Perl data structures |
This module was inspired by the excellent DBIx::Abstract. However, in using that module I found that what I really wanted to do was generate SQL, but still retain complete control over my statement handles and use the DBI interface. So, I set out to create an abstract SQL generation module. While based on the concepts used by DBIx::Abstract, there are several important differences, especially when it comes to WHERE clauses. I have modified the concepts used to make the SQL easier to generate from Perl data structures and, IMO, more intuitive. The underlying idea is for this module to do what you mean, based on the data structures you provide it. The big advantage is that you don't have to modify your code every time your data changes, as this module figures it out. To begin with, an SQL INSERT is as easy as just specifying a hash of 'key=value' pairs: my %data = ( name => 'Jimbo Bobson', phone => '123-456-7890', address => '42 Sister Lane', city => 'St. Louis', state => 'Louisiana', ); The SQL can then be generated with this: my($stmt, @bind) = $sql->insert('people', \%data); Which would give you something like this: $stmt = "INSERT INTO people (address, city, name, phone, state) VALUES (?, ?, ?, ?, ?)"; @bind = ('42 Sister Lane', 'St. Louis', 'Jimbo Bobson', '123-456-7890', 'Louisiana'); These are then used directly in your DBI code: my $sth = $dbh->prepare($stmt); $sth->execute(@bind);
Artistic-1.0 OR GPL-1.0-or-later
* Sun Jan 24 2021 Tina Müller <timueller+perl@suse.de> - updated to 2.000001 see /usr/share/doc/packages/perl-SQL-Abstract/Changes 2.000001 - 2021-01-23 - Remove Module::Runtime requirement 2.000000 - 2021-01-21 - Collapse custom join conditions back to something DBIC might understand 1.90_03 - 2019-10-13 - Add proof of concept DBIx::Class::SQLMaker::Role::SQLA2Passthrough - _where_field_IN/BETWEEN are documented as subclassable; feature restored 1.90_02 - 2019-10-12 - fix DBIC ident op expander compat wrapper to handle call as unop 1.90_01 - 2019-10-09 - Complete overhaul of the internals, see the SQL::Abstract::Reference docs to understand the new implementation's affordances. * Tue Jun 02 2020 Tina Müller <timueller+perl@suse.de> - updated to 1.87 see /usr/share/doc/packages/perl-SQL-Abstract/Changes 1.87 - 2020-06-02 - Add runtime dependency on Test::Deep and Test::Builder::Module for SQL::Abstract::Test (RT#131623) * Tue Jul 10 2018 coolo@suse.com - updated to 1.86 see /usr/share/doc/packages/perl-SQL-Abstract/Changes 1.86 - 2018-07-09 - Remove obsolete documentation about arrayrefref as the $source argument for ->select (removed in version 1.74) - Factor out the field list part of SELECT for subclassability (GH#13) - Do not replace literal '0' with empty string in WHERE clauses (GH#14) * Wed Jan 31 2018 coolo@suse.com - updated to 1.85 see /usr/share/doc/packages/perl-SQL-Abstract/Changes 1.85 - 2018-01-27 - Restore perl version requirement missed in the Distar port - Factor out the SET ... part of UPDATE for subclassability (GH#12) * Tue Apr 04 2017 coolo@suse.com - updated to 1.84 see /usr/share/doc/packages/perl-SQL-Abstract/Changes 1.84 - 2017-04-03 - Restore 'dynamic_config => 0' missed in the Distar port 1.83 - 2017-04-03 - Support for DELETE ... RETURNING (GH#9) - Port to Distar * Tue Mar 21 2017 coolo@suse.com - updated to 1.82 see /usr/share/doc/packages/perl-SQL-Abstract/Changes revision 1.82 2017-03-20 - ------------------------ - Add explicit dependency on Sub::Quote (GH#8) - Fix syntax errors in ORDER BY docs (GH#7) revision 1.81_01 2017-02-28 - --------------------------- - Fix order clauses with bind parameters in ->where - Fix ->insert($table, \@values) with >26 values (RT#112684) - Teach ::Tree that ILIKE (PostgreSQL) and REGEXP (MySQL) are binary ops - Support for UPDATE ... RETURNING - Documentation improvements for ORDER BY * Wed Nov 12 2014 coolo@suse.com - updated to 1.81 - Fix overly-enthusiastic parenthesis unroller (RT#99503) revision 1.80 2014-10-05 - --------------------------- - Fix erroneous behavior of is_literal_value($) wrt { -ident => ... } - Explicitly croak on top-level special ops (they didn't work anyway) revision 1.79 2014-09-25 - --------------------------- - New exportable functions: is_literal_value($) and is_plain_value($) - New attribute 'escape_char' allowing for proper escape of quote_chars present in an identifier - Deprecate { "" => \... } constructs - Treat { -value => undef } as plain undef in all cases - Explicitly throw on { -ident => undef } * Mon Sep 15 2014 coolo@suse.com - updated to 1.78 - Fix parsing of binary ops to correctly take up only a single LHS element, instead of gobbling up the entire parse-to-date - Explicitly handle ROW_NUMBER() OVER as the snowflake-operator it is - Improve signatures/documentation of is_same_sql_bind / eq_sql_bind - Retire script/format-sql - the utility needs more work to be truly end-user convenient * Mon Feb 24 2014 coolo@suse.com - updated to 1.77 - Reintroduce { -not => undef } column operator (regression from 1.75) - *UPCOMING INCOMPATIBLE BUGFIX*: SQLA used to generate incorrect SQL on undef-containing lists fed to -in and -not_in. An exception will be raised for a while before properly fixing this, to avoid quiet but subtle changes to query results in production - Deprecate and warn when supplying an empty arrayref to like/not_like operators (likely to be removed before 2.0) - Warn when using an inequality operator with a multi-value array to arrive at what amounts to a 1=1 condition (no pre-2.0 plans to fix this behavior due to backwards comp concerns) - Fix false negative comparison of ORDER BY <function> ASC - More improvements of incorrect parsing (placeholder at end of list element) - Fix typos in POD and comments (RT#87776) - Augment -not_bool example with nesting (RT#89601) * Sat Jul 27 2013 coolo@suse.com - updated to 1.74 - Fix insufficient parenthesis unroll during operator comparison - 'ORDER BY foo' and 'ORDER BY foo ASC' are now considered equal by default (with a switch to reenable old behavior when necessary) - Change parser to not eagerly slurp RHS expressions it doesn't recognize
/usr/lib/perl5/vendor_perl/5.26.1/DBIx /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/SQLMaker /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/SQLMaker/Role /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/SQLMaker/Role/SQLA2Passthrough.pm /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/Storage /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/Storage/Debug /usr/lib/perl5/vendor_perl/5.26.1/DBIx/Class/Storage/Debug/PrettyPrint.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Formatter.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Parts.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Plugin /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Plugin/BangOverrides.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Plugin/ExtraClauses.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Reference.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Role /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Role/Plugin.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Test.pm /usr/lib/perl5/vendor_perl/5.26.1/SQL/Abstract/Tree.pm /usr/lib/perl5/vendor_perl/5.26.1/x86_64-linux-thread-multi /usr/share/doc/packages/perl-SQL-Abstract /usr/share/doc/packages/perl-SQL-Abstract/Changes /usr/share/doc/packages/perl-SQL-Abstract/README /usr/share/doc/packages/perl-SQL-Abstract/examples /usr/share/doc/packages/perl-SQL-Abstract/examples/bangdbic.pl /usr/share/doc/packages/perl-SQL-Abstract/examples/console.pl /usr/share/doc/packages/perl-SQL-Abstract/examples/dbic-console.pl /usr/share/doc/packages/perl-SQL-Abstract/examples/sqla-format /usr/share/doc/packages/perl-SQL-Abstract/examples/sqla2passthrough.pl /usr/share/licenses/perl-SQL-Abstract /usr/share/licenses/perl-SQL-Abstract/LICENSE /usr/share/man/man3/DBIx::Class::SQLMaker::Role::SQLA2Passthrough.3pm.gz /usr/share/man/man3/DBIx::Class::Storage::Debug::PrettyPrint.3pm.gz /usr/share/man/man3/SQL::Abstract.3pm.gz /usr/share/man/man3/SQL::Abstract::Plugin::BangOverrides.3pm.gz /usr/share/man/man3/SQL::Abstract::Plugin::ExtraClauses.3pm.gz /usr/share/man/man3/SQL::Abstract::Reference.3pm.gz /usr/share/man/man3/SQL::Abstract::Role::Plugin.3pm.gz /usr/share/man/man3/SQL::Abstract::Test.3pm.gz /usr/share/man/man3/SQL::Abstract::Tree.3pm.gz
Generated by rpm2html 1.8.1
Fabrice Bellet, Tue Jul 9 19:58:50 2024