AnyEvent-Pg
view release on metacpan or search on metacpan
lib/AnyEvent/Pg.pm view on Meta::CPAN
=over
=item query => $sql_query
The SQL query to be passed to the database
=item query => [$sql_query, @args]
A SQL query with placeholders ($1, $2, $3, etc.) and the arguments.
=item args => \@args
An alternative way to pass the arguments to a SQL query with placeholders.
=item on_error => sub { ... }
The given callback will be called when the query processing fails for
any reason.
=item on_result => sub { ... }
The given callback will be called for every result returned for the
given query.
You should expect one result object for every SQL statement on the
query.
The callback will receive as its arguments the AnyEvent::Pg and the
L<Pg::PQ::Result> object.
=item on_done => sub { ... }
This callback will be run after the last result from the query is
processed. The AnyEvent::Pg object is passed as an argument.
=back
=item $w = $adb->push_prepare(%opts)
Queues a query prepare operation for execution.
The accepted options are:
=over
=item name => $name
Name of the prepared query.
=item query => $sql
SQL code for the prepared query.
=item on_error => sub { ... }
=item on_result => sub { ... }
=item on_done => sub { ... }
These callbacks perform in the same fashion as on the C<push_query>
method.
=back
=item $w = $adb->push_query_prepared(%opts)
Queues a prepared query for execution.
The accepted options are:
=over 4
=item name => $name
Name of the prepared query.
=item args => \@args
Arguments for the query.
=item on_result => sub { ... }
=item on_done => sub { ... }
=item on_error => sub { ... }
These callbacks work as on the C<push_query> method.
=back
=item $w = $adb->unshift_query(%opts)
=item $w = $adb->unshift_query_prepared(%opts)
These method work in the same way as its C<push> counterparts, but
instead of pushing the query at the end of the queue they push
(unshift) it at the beginning to be executed just after the current
one is done.
This methods can be used as a way to run transactions composed of
several queries.
=item $adb->abort_all
Marks the connection as dead and aborts any queued queries calling the
C<on_error> callbacks.
=item $adb->queue_size
Returns the number of queries queued for execution.
=item $adb->finish
Closes the connection to the database and frees the associated
resources.
=item $adb->last_query_start_time
Returns the time at which processing for the last query started.
=back
=head1 SEE ALSO
L<Pg::PQ>, L<AnyEvent>, L<AnyEvent::Pg::Pool>.
L<AnyEvent::DBD::Pg> provides non-blocking access to a PostgreSQL
through L<DBD::Pg>, but note that L<DBD::Pg> does not provides a
complete asynchronous interface (for instance, establishing new
connections is always a blocking operation).
L<Protocol::PostgreSQL>: pure Perl implementation of the PostgreSQL
client-server protocol that can be used in non-blocking mode.
=head1 BUGS AND SUPPORT
This is a very early release that may contain lots of bugs.
Send bug reports by email or using the CPAN bug tracker at
L<https://rt.cpan.org/Dist/Display.html?Status=Active&Queue=AnyEvent-Pg>.
=head2 Commercial support
This module was implemented during the development of QVD
(L<http://theqvd.com>) the Linux VDI platform.
Commercial support, professional services and custom software
development services around this module are available from QindelGroup
(L<http://qindel.com>). Send us an email with a rough description of your
requirements and we will get back to you ASAP.
=head1 AUTHOR
Salvador FandiE<ntilde>o, E<lt>sfandino@yahoo.comE<gt>
=head1 COPYRIGHT AND LICENSE
Copyright (C) 2011-2014 by Qindel FormaciE<oacute>n y Servicios S.L.
This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.10.1 or,
at your option, any later version of Perl 5 you may have available.
=cut
( run in 1.132 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )