NAME
DBIx::SQLEngine::Driver::MSSQL - Support Microsoft SQL Server via DBD::ODBC
SYNOPSIS
DBI Wrapper: Adds methods to a DBI database handle.
my
$sqldb
= DBIx::SQLEngine->new(
'dbi:odbc:mycnxn'
);
Portability Subclasses: Uses driver's idioms or emulation.
$hash_ary
=
$sqldb
->fetch_select(
table
=>
'students'
limit
=> 5,
offset
=> 10
);
DESCRIPTION
This package provides a subclass of DBIx::SQLEngine which compensates for Microsoft SQL Server's idiosyncrasies.
Under Development
Note: this driver class has been added recently and not yet tested in real-world conditions.
About Driver Subclasses
You do not need to use this package directly; when you connect to a database, the SQLEngine object is automatically re-blessed in to the appropriate subclass.
FETCHING DATA (SQL DQL)
Methods Used By Complex Queries
EDITING DATA (SQL DML)
Insert to Add Data
- do_insert_with_sequence()
-
$sqldb
->do_insert_with_sequence(
$sequence_name
,
%sql_clauses
) :
$row_count
Implemented using _seq_do_insert_postfetch and seq_fetch_current.
- seq_fetch_current
-
$sqldb
->seq_fetch_current( ) :
$current_value
Implemented using MS SQL's "select @@IDENTITY". Note that this doesn't fetch the current sequence value for a given table, since it doesn't respect the table and field arguments, but merely returns the last sequencial value created during this session.
DEFINING STRUCTURES (SQL DDL)
Create and Drop Tables
- dbms_create_column_types()
-
$sqldb
->dbms_create_column_types () :
%column_type_codes
Implemented using MS SQL's blob and int types.
- dbms_create_column_text_long_type
-
$sqldb
->dbms_create_column_text_long_type () :
$col_type_str
Implemented using MS SQL's blob type.
INTERNAL STATEMENT METHODS (DBI STH)
Statement Handle Lifecycle
- prepare_execute()
-
After the normal prepare_execute cycle, this also sets the sth's LongReadLen to dbms_longreadlen_bufsize().
- dbms_longreadlen_bufsize()
-
Set to 1_000_000.
recoverable_query_exceptions
$sqldb
->recoverable_query_exceptions() :
@common_error_messages
Provides a list of error messages which represent common communication failures or other incidental errors.
SEE ALSO
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.