NAME
DBIx::Class::Storage::DBI::SQLAnywhere - Driver for SQL Anywhere
DESCRIPTION
This class implements autoincrements for SQL Anywhere and provides DBIx::Class::InflateColumn::DateTime support and support for the uniqueidentifier
type (via DBIx::Class::Storage::DBI::SQLAnywhere::Cursor.)
You need the DBD::SQLAnywhere
driver that comes with the SQL Anywhere distribution, NOT the one on CPAN. It is usually under a path such as:
/opt/sqlanywhere11/sdk/perl
Recommended connect_info settings:
on_connect_call => 'datetime_setup'
METHODS
connect_call_datetime_setup
Used as:
on_connect_call => 'datetime_setup'
In connect_info to set the date and timestamp formats (as temporary options for the session) for use with DBIx::Class::InflateColumn::DateTime.
The TIMESTAMP
data type supports up to 6 digits after the decimal point for second precision. The full precision is used.
The DATE
data type supposedly stores hours and minutes too, according to the documentation, but I could not get that to work. It seems to only store the date.
You will need the DateTime::Format::Strptime module for inflation to work.
MAXIMUM CURSORS
A DBIx::Class application can use a lot of cursors, due to the usage of prepare_cached.
The default cursor maximum is 50
, which can be a bit too low. This limit can be turned off (or increased) by the DBA by executing:
set option max_statement_count = 0
set option max_cursor_count = 0
Highly recommended.
AUTHOR
See "AUTHOR" in DBIx::Class and "CONTRIBUTORS" in DBIx::Class.
LICENSE
You may distribute this code under the same terms as Perl itself.