| DBIx-SQLEngine documentation | Contained in the DBIx-SQLEngine distribution. |
DBIx::SQLEngine::Driver::Sybase::MSSQL - Support Microsoft SQL via DBD::Sybase
DBI Wrapper: Adds methods to a DBI database handle.
my $sqldb = DBIx::SQLEngine->new( 'dbi:Sybase:server=MyServer' );
Portability Subclasses: Uses driver's idioms or emulation.
$sqldb->select_dbms_flavor('MSSQL');
$hash_ary = $sqldb->fetch_select(
table => 'students'
limit => 5, offset => 10
);
This package provides a subclass of DBIx::SQLEngine::Driver::Sybase which compensates for configurations in which DBD::Sybase is being used to communicate with a Microsoft SQL Server database.
If you are connecting to a Microsoft SQL Server through ODBC, you should use the regular MSSQL driver; see DBIx::SQLEngine::Driver::MSSQL
For more information, see "Using DBD::Sybase with MS-SQL" in DBD::Sybase.
Note that this driver class has been added recently and not yet tested in real-world conditions.
This subclass of the Sybase driver must be specifically triggered, because the package is unable to automatically detect the difference between using DBD::Sybase with a Sybase server and using it with a Microsoft server.
To do this, call select_dbms_flavor after connecting:
my $sqldb = DBIx::SQLEngine->new( 'dbi:Sybase:server=MyServer' );
$sqldb->select_dbms_flavor('MSSQL');
For more information, see the documentation for the superclass, DBIx::SQLEngine::Driver::Sybase.
When using DBD::Sybase to talk to a Microsoft SQL Server, "?"-style placeholders are not supported.
Uses the NoPlaceholders trait. For more information, see DBIx::SQLEngine::Driver::Trait::NoPlaceholders.
After the normal prepare_execute cycle, this also sets the sth's LongReadLen to dbms_longreadlen_bufsize().
Set to 1_000_000.
See DBIx::SQLEngine for the overall interface and developer documentation.
See DBIx::SQLEngine::Docs::ReadMe for general information about this distribution, including installation and license information.
| DBIx-SQLEngine documentation | Contained in the DBIx-SQLEngine distribution. |
######################################################################## package DBIx::SQLEngine::Driver::Sybase::MSSQL; @ISA = qw( DBIx::SQLEngine::Driver::Sybase ); use strict; use Carp; ######################################################################## ########################################################################
use DBIx::SQLEngine::Driver::Trait::NoPlaceholders qw( :all !prepare_execute ); ######################################################################## ########################################################################
sub dbms_longreadlen_bufsize { 1_000_000 } sub prepare_execute { my $self = shift; my $sth = $self-> DBIx::SQLEngine::Driver::Trait::NoPlaceholders::prepare_execute( @_ ); $sth->{LongReadLen} = $self->dbms_longreadlen_bufsize; $sth->{LongTruncOk} = 0; $sth; } ########################################################################
######################################################################## 1;