DBIx::Class::Storage::DBI::InterBase - Driver for the Firebird RDBMS via DBD::InterBase
This driver is a subclass of DBIx::Class::Storage::DBI::Firebird::Common for use with DBD::InterBase, see that driver for general details.
You need to use either the disable_sth_caching option or "connect_call_use_softcommit" (see "CAVEATS") for your code to function correctly with this driver. Otherwise you will likely get bizarre error messages such as no statement executing. The alternative is to use the ODBC driver, which is more suitable for long running processes such as under Catalyst.
no statement executing
To turn on DBIx::Class::InflateColumn::DateTime support, see "connect_call_datetime_setup".
Used as:
on_connect_call => 'use_softcommit'
In connect_info to set the DBD::InterBase ib_softcommit option.
ib_softcommit
You need either this option or disable_sth_caching => 1 for DBIx::Class code to function correctly (otherwise you may get no statement executing errors.) Or use the ODBC driver.
disable_sth_caching => 1
The downside of using this option is that your process will NOT see UPDATEs, INSERTs and DELETEs from other processes for already open statements.
on_connect_call => 'datetime_setup'
In connect_info to set the date and timestamp formats using:
$dbh->{ib_time_all} = 'ISO';
See DBD::InterBase for more details.
The TIMESTAMP data type supports up to 4 digits after the decimal point for second precision. The full precision is used.
TIMESTAMP
The DATE data type stores the date portion only, and it MUST be declared with:
DATE
data_type => 'date'
in your Result class.
Timestamp columns can be declared with either datetime or timestamp.
datetime
timestamp
You will need the DateTime::Format::Strptime module for inflation to work.
For DBIx::Class::Storage::DBI::ODBC::Firebird, this is a noop.
with "connect_call_use_softcommit", you will not be able to see changes made to data in other processes. If this is an issue, use disable_sth_caching as a workaround for the no statement executing errors, this of course adversely affects performance.
Alternately, use the ODBC driver.
See "AUTHOR" in DBIx::Class and "CONTRIBUTORS" in DBIx::Class.
You may distribute this code under the same terms as Perl itself.
To install DBIx::Class, copy and paste the appropriate command in to your terminal.
cpanm
cpanm DBIx::Class
CPAN shell
perl -MCPAN -e shell install DBIx::Class
For more information on module installation, please visit the detailed CPAN module installation guide.