NAME
DBIx::Compat - Perl extension for Compatibility Infos about DBD Drivers
SYNOPSIS
use DBIx::Compat;
$DBIx::Compat::Compat{$Driver}{Placeholders}
$DBIx::Compat::Compat{$Driver}{QuoteTypes}
$DBIx::Compat::Compat{$Driver}{ListFields}
DESCRIPTION
DBIx::Compat contains a hash which gives information about DBD drivers, to allow to write driver independent programs.
Currently there are three attributes defined:
Placeholders
Gives information if and how placeholders are supported:
- 0 = Not supported
- 1 = Supported, but not fully, unknown how much
- 2 = Supported, but perl type must be the same as type in db
- 3 = Supported, but can not give a string when a numeric type is in the db
- 10 = Supported under all circumstances
QuoteTypes
Gives information which datatypes must be quoted when passed literal (not via a placeholder). Contains a hash with all type number which need to be quoted.
$DBIx::Compat::Compat{$Driver}{QuoteTypes}{$Type}
will be true when the type in $Type for the driver $Driver must be quoted.
ListFields
A function which will return information about all fields of an table. Needs an database handle and a tablename as argument. Must at least return the fieldnames and the fieldtypes.
Example:
$ListFields = $DBIx::Compat::Compat{$Driver}{ListFields} ;
$sth = &{$ListFields}($DBHandle, $Table) or die "Cannot list fields" ;
@{ $sth -> {NAME} } ; # array of fieldnames
@{ $sth -> {TYPE} } ; # array of filedtypes
$sth -> finish ;
Supported Drivers
Currently there are entry for
- DBD::mSQL
- DBD::mysql
- DBD::Pg
- DBD::Solid
- DBD::ODBC
- DBD::CSV
- DBD::Oracle
-
if you detect an error in the definition or add an definition for a new DBD driver, please mail it to the author.
AUTHOR
G.Richter <richter*dev.ecos.de>
SEE ALSO
perl(1), DBI(3), DBIx::Recordset(3)
2 POD Errors
The following errors were encountered while parsing the POD:
- Around line 233:
'=item' outside of any '=over'
- Around line 251:
You forgot a '=back' before '=head1'