GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
DBIx::Connector::Driver(3) User Contributed Perl Documentation DBIx::Connector::Driver(3)

DBIx::Connector::Driver - Database-specific connection interface

Some of the things that DBIx::Connector does are implemented differently by different drivers, or the official interface provided by the DBI may not be implemented for a particular driver. The driver-specific code therefore is encapsulated in this separate driver class.

Most of the DBI drivers work uniformly, so in most cases the implementation provided here in DBIx::Connector::Driver will work just fine. It's only when something is different that a driver subclass needs to be added. In such a case, the subclass's name is the same as the DBI driver. For example the driver for DBD::Pg is DBIx::Connector::Driver::Pg and the driver for DBD::mysql is DBIx::Connector::Driver::mysql.

If you're just a user of DBIx::Connector, you can ignore the driver classes. DBIx::Connector uses them internally to do its magic, so you needn't worry about them.

In case you need to implement a driver, here's the interface you can modify.

"new"

  my $driver = DBIx::Connector::Driver->new( $driver );

Constructs and returns a driver object. Each driver class is implemented as a singleton, so the same driver object is always returned for the same driver. The "driver" parameter should be a Perl DBI driver name, such as "Pg" for DBD::Pg or "SQLite" for DBD::SQLite. If a subclass has been defined for $driver, then the object will be of that class. Otherwise it will be an instance of the driver base class.

"ping"

  $driver->ping($dbh);

Calls "$dbh->ping". Override if for some reason the DBI driver doesn't do it right.

"begin_work"

  $driver->begin_work($dbh);

Calls "$dbh->begin_work". Override if for some reason the DBI driver doesn't do it right.

"commit"

  $driver->commit($dbh);

Calls "$dbh->commit". Override if for some reason the DBI driver doesn't do it right.

"rollback"

  $driver->rollback($dbh);

Calls "$dbh->rollback". Override if for some reason the DBI driver doesn't do it right.

"savepoint"

  $driver->savepoint($dbh, $name);

A no-op. Override if your database does in fact support savepoints. The driver subclass should create a savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

"release"

  $driver->release($dbh, $name);

A no-op. Override if your database does in fact support savepoints. The driver subclass should release the savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

"rollback_to"

  $driver->rollback_to($dbh, $name);

A no-op. Override if your database does in fact support savepoints. The driver subclass should rollback to the savepoint with the given $name. See the implementations in DBIx::Connector::Driver::Pg and DBIx::Connector::Driver::Oracle for examples.

This module was written by:
David E. Wheeler <david@kineticode.com>

It is based on code written by:

Matt S. Trout <mst@shadowcatsystems.co.uk>
Peter Rabbitson <rabbit+dbic@rabbit.us>

Copyright (c) 2009-2013 David E. Wheeler. Some Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

2021-09-27 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.