|
NAMEDBIx::Compat - Perl extension for Compatibility Infos about DBD Drivers SYNOPSISuse DBIx::Compat; my $HaveTypes = DBIx::Compat::GetItem ($drv, 'HaveTypes') ; DESCRIPTIONDBIx::Compat contains a hash which gives information about DBD drivers, to allow to write driver independent programs. Currently there are the following attributes defined: ListFieldsA 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 ;
ListTablesA function which will return an array of all tables of the datasource. Defaults to $dbh -> "tables". NumericTypesHash which contains one entry for all datatypes that are numeric. SupportJoinSet to true if the DBMS supports joins (select with multiple tables) SupportSQLJoinSet to 1 if the DBMS supports INNER/LEFT/RIGHT JOIN Syntax in SQL select. Set to 2 if DBMS needs a *= b syntax for inner join (MS-SQL, Sybase). Set to 3 if DBMS needs a = b (+) syntax for inner join (Oracle syntax). SQLJoinOnly2TabsSet to true if DBMS can only support two tables in inner joins. HaveTypesSet to true if DBMS supports datatypes (most DBMS will do) NeedNullInCreateSet to 'NULL' if DBMS requires the NULL keyword when creating tables where fields should contains nulls. EmptyIsNullSet to true if an empty string ('') and NULL is the same for the DBMS. LimitOffsetAn function which will be used to create a SQL text for limiting the number of fetched rows and selecting the starting row in selects. Keys that aren't needed anymorePlaceholdersGives information if and how placeholders are supported:
QuoteTypesGives 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. Supported DriversCurrently there are entry for
AUTHORG.Richter <richter*dev.ecos.de> SEE ALSOperl(1), DBI(3), DBIx::Recordset(3) POD ERRORSHey! The above document had some coding errors, which are explained below:
|