DBIx::POS(3) User Contributed Perl Documentation DBIx::POS(3)NAMEDBIx::POS - Define a dictionary of SQL statements in a POD dialect
(POS)
SYNOPSIS
To define your dictionary:
package OurSQL;
use strict;
use warnings;
use base qw{DBIx::POS};
__PACKAGE__->instance (__FILE__);
=name testing
=desc test the DBI::POS module
=param
Some arbitrary parameter
=sql
There is really no syntax checking done on the content of the =sql section.
=cut
To use your dictionary:
package main;
use strict;
use warnings;
use OurSQL;
my $sql = OurSQL->instance;
$dbh->do ($sql->{testing});
DESCRIPTION
DBIx-POS subclasses Pod::Parser to define a POD dialect for writing a
SQL dictionary for an application, and uses code from Class::Singleton
to make the resulting structure easily accessible.
By encouraging the centralization of SQL code, it guards against SQL
statement duplication (and the update problems that can generate).
By separating the SQL code from its normal context of execution, it
encourages you to do other things with it---for instance, it is easy to
create a script that can do performance testing of certain SQL
statements in isolation, or to create generic command-line wrapper
around your SQL statements.
By giving a framework for documenting the SQL, it encourages
documentation of the intent and/or implementation of the SQL code. It
also provides all of that information in a format from which other
documentation could be generated---say, a chunk of DocBook for
incorporation into a guide to programming the application.
EXPORT
Nothing is exported. Aren't singletons cool?
SEE ALSO
DBI, Pod::Parser, Class::Singleton
AUTHOR
Michael Alan Dorman, <mdorman@debian.org>
The instance routine is from Class::Singleton
Andy Wardley, "<abw@cre.canon.co.uk>"
Web Technology Group, Canon Research Centre Europe Ltd.
Thanks to Andreas Koenig "<andreas.koenig@anima.de>" for providing some
significant speedup patches and other ideas.
COPYRIGHT AND LICENSE
Copyright (C) 2004 by Michael Alan Dorman
This library is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
The instance routine is from Class::Singleton
Copyright (C) 1998 Canon Research Centre Europe Ltd. All Rights
Reserved.
This module is free software; you can redistribute it and/or modify it
under the term of the Perl Artistic License.
perl v5.14.1 2004-06-23 DBIx::POS(3)