class MSDialect(default.DefaultDialect):
Known subclasses: sqlalchemy.dialects.mssql.mxodbc.MSDialect_mxodbc
, sqlalchemy.dialects.mssql.pymssql.MSDialect_pymssql
, sqlalchemy.dialects.mssql.pyodbc.MSDialect_pyodbc
Undocumented
Method | __init__ |
Undocumented |
Method | _get_default_schema_name |
Return the string name of the currently selected schema from the given connection. |
Method | _get_internal_temp_table_name |
Undocumented |
Method | _setup_supports_nvarchar_max |
Undocumented |
Method | _setup_version_attributes |
Undocumented |
Method | _temp_table_name_like_pattern |
Undocumented |
Method | do_release_savepoint |
Release the named savepoint on a connection. |
Method | do_savepoint |
Create a savepoint with the given name. |
Method | get_columns |
Return information about columns in table_name . |
Method | get_foreign_keys |
Return information about foreign_keys in table_name . |
Method | get_indexes |
Return information about indexes in table_name . |
Method | get_isolation_level |
Given a DBAPI connection, return its isolation level. |
Method | get_pk_constraint |
Return information about the primary key constraint on table_name`. |
Method | get_schema_names |
Undocumented |
Method | get_sequence_names |
Return a list of all sequence names available in the database. |
Method | get_table_names |
Return a list of table names for schema . |
Method | get_view_definition |
Return view definition. |
Method | get_view_names |
Return a list of all view names available in the database. |
Method | has_sequence |
Check the existence of a particular sequence in the database. |
Method | has_table |
For internal dialect use, check the existence of a particular table in the database. |
Method | initialize |
Called during strategized creation of the dialect with a connection. |
Method | on_connect |
return a callable which sets up a newly created DBAPI connection. |
Method | set_isolation_level |
Given a DBAPI connection, set its isolation level. |
Class Variable | _isolation_lookup |
Undocumented |
Class Variable | colspecs |
Undocumented |
Class Variable | construct_arguments |
Optional set of argument specifiers for various SQLAlchemy constructs, typically schema items. |
Class Variable | default_sequence_base |
Undocumented |
Class Variable | engine_config_types |
Undocumented |
Class Variable | full_returning |
Undocumented |
Class Variable | implicit_returning |
Undocumented |
Class Variable | max_identifier_length |
Undocumented |
Class Variable | name |
Undocumented |
Class Variable | non_native_boolean_check_constraint |
Undocumented |
Class Variable | postfetch_lastrowid |
Undocumented |
Class Variable | sequences_optional |
Undocumented |
Class Variable | server_version_info |
Undocumented |
Class Variable | supports_default_values |
dialect supports INSERT... DEFAULT VALUES syntax |
Class Variable | supports_empty_insert |
dialect supports INSERT () VALUES () |
Class Variable | supports_native_boolean |
Undocumented |
Class Variable | supports_sequences |
Undocumented |
Class Variable | supports_statement_cache |
indicates if this dialect supports caching. |
Class Variable | supports_unicode_binds |
Undocumented |
Instance Variable | _json_deserializer |
Undocumented |
Instance Variable | _json_serializer |
Undocumented |
Instance Variable | _supports_nvarchar_max |
Undocumented |
Instance Variable | _supports_offset_fetch |
Undocumented |
Instance Variable | deprecate_large_types |
Undocumented |
Instance Variable | isolation_level |
Undocumented |
Instance Variable | legacy_schema_aliasing |
Undocumented |
Instance Variable | query_timeout |
Undocumented |
Instance Variable | schema_name |
Undocumented |
Instance Variable | supports_multivalues_insert |
Undocumented |
Instance Variable | use_scope_identity |
Undocumented |
Inherited from DefaultDialect
:
Class Method | get_pool_class |
Undocumented |
Class Method | load_provisioning |
set up the provision.py module for this dialect. |
Method | connect |
Establish a connection using this dialect's DBAPI. |
Method | create_connect_args |
Build DB-API compatible connection arguments. |
Method | create_xid |
Create a random two-phase transaction ID. |
Method | denormalize_name |
convert the given name to a case insensitive identifier for the backend if it is an all-lowercase name. |
Method | do_begin |
Provide an implementation of connection.begin(), given a DB-API connection. |
Method | do_close |
Provide an implementation of connection.close(), given a DBAPI connection. |
Method | do_commit |
Provide an implementation of connection.commit(), given a DB-API connection. |
Method | do_execute |
Provide an implementation of cursor.execute(statement, parameters). |
Method | do_execute_no_params |
Provide an implementation of cursor.execute(statement). |
Method | do_executemany |
Provide an implementation of cursor.executemany(statement, parameters). |
Method | do_rollback |
Provide an implementation of connection.rollback(), given a DB-API connection. |
Method | do_rollback_to_savepoint |
Rollback a connection to the named savepoint. |
Method | get_default_isolation_level |
Given a DBAPI connection, return its isolation level, or a default isolation level if one cannot be retrieved. |
Method | get_driver_connection |
Returns the connection object as returned by the external driver package. |
Method | has_index |
Check the existence of a particular index name in the database. |
Method | is_disconnect |
Return True if the given DB-API error indicates an invalid connection |
Method | normalize_name |
convert the given name to lowercase if it is detected as case insensitive. |
Method | reset_isolation_level |
Given a DBAPI connection, revert its isolation to the default. |
Method | type_descriptor |
Provide a database-specific .TypeEngine object, given the generic object which comes from the types module. |
Class Variable | dbapi_exception_translation_map |
mapping used in the extremely unusual case that a DBAPI's published exceptions don't actually have the __name__ that they are linked towards. |
Class Variable | supports_default_metavalue |
dialect supports INSERT... VALUES (DEFAULT) syntax |
Instance Variable | returns_unicode_strings |
Undocumented |
Instance Variable | type_compiler |
Undocumented |
Method | _check_max_identifier_length |
Perform a connection / server version specific check to determine the max_identifier_length. |
Method | _check_unicode_description |
Undocumented |
Method | _check_unicode_returns |
Undocumented |
Method | _ensure_has_table_connection |
Undocumented |
Method | _reset_characteristics |
Undocumented |
Method | _set_connection_characteristics |
Undocumented |
Method | do_ping |
Undocumented |
Method | get_dialect_pool_class |
Undocumented |
Method | set_connection_execution_options |
Undocumented |
Method | set_engine_execution_options |
Undocumented |
Method | validate_identifier |
Undocumented |
Class Variable | connection_characteristics |
Undocumented |
Class Variable | cte_follows_insert |
Undocumented |
Class Variable | default_paramstyle |
Undocumented |
Class Variable | inline_comments |
Undocumented |
Class Variable | insert_executemany_returning |
Undocumented |
Class Variable | is_async |
Undocumented |
Class Variable | max_constraint_name_length |
Undocumented |
Class Variable | max_index_name_length |
Undocumented |
Class Variable | preexecute_autoincrement_sequences |
Undocumented |
Class Variable | reflection_options |
Undocumented |
Class Variable | requires_name_normalize |
Undocumented |
Class Variable | server_side_cursors |
Undocumented |
Class Variable | supports_alter |
Undocumented |
Class Variable | supports_comments |
Undocumented |
Class Variable | supports_for_update_of |
Undocumented |
Class Variable | supports_identity_columns |
Undocumented |
Class Variable | supports_is_distinct_from |
Undocumented |
Class Variable | supports_native_decimal |
Undocumented |
Class Variable | supports_native_enum |
Undocumented |
Class Variable | supports_sane_multi_rowcount |
Undocumented |
Class Variable | supports_sane_rowcount |
Undocumented |
Class Variable | supports_schemas |
Undocumented |
Class Variable | supports_server_side_cursors |
Undocumented |
Class Variable | supports_simple_order_by_label |
Undocumented |
Class Variable | supports_unicode_statements |
Undocumented |
Class Variable | supports_views |
Undocumented |
Class Variable | tuple_in_values |
Undocumented |
Class Variable | use_setinputsizes |
Undocumented |
Instance Variable | _decoder |
Undocumented |
Instance Variable | _description_decoder |
Undocumented |
Instance Variable | _encoder |
Undocumented |
Instance Variable | _ischema |
Undocumented |
Instance Variable | _user_defined_max_identifier_length |
Undocumented |
Instance Variable | case_sensitive |
Undocumented |
Instance Variable | compiler_linting |
Undocumented |
Instance Variable | convert_unicode |
Undocumented |
Instance Variable | dbapi |
Undocumented |
Instance Variable | default_isolation_level |
Undocumented |
Instance Variable | default_schema_name |
Undocumented |
Instance Variable | description_encoding |
Undocumented |
Instance Variable | encoding |
Undocumented |
Instance Variable | identifier_preparer |
Undocumented |
Instance Variable | label_length |
Undocumented |
Instance Variable | paramstyle |
Undocumented |
Instance Variable | positional |
Undocumented |
Property | _dialect_specific_select_one |
Undocumented |
Property | _supports_statement_cache |
Undocumented |
Property | _type_memos |
Undocumented |
Property | dialect_description |
Undocumented |
Property | supports_sane_rowcount_returning |
True if this dialect supports sane rowcount even if RETURNING is in use. |
Inherited from Dialect
(via DefaultDialect
):
Class Method | engine_created |
A convenience hook called before returning the final _engine.Engine . |
Class Method | get_dialect_cls |
Given a URL, return the .Dialect that will be used. |
Method | _get_server_version_info |
Retrieve the server version info from the given connection. |
Method | do_begin_twophase |
Begin a two phase transaction on the given connection. |
Method | do_commit_twophase |
Commit a two phase transaction on the given connection. |
Method | do_prepare_twophase |
Prepare a two phase transaction on the given connection. |
Method | do_recover_twophase |
Recover list of uncommitted prepared two phase transaction identifiers on the given connection. |
Method | do_rollback_twophase |
Rollback a two phase transaction on the given connection. |
Method | do_set_input_sizes |
invoke the cursor.setinputsizes() method with appropriate arguments |
Method | get_check_constraints |
Return information about check constraints in table_name . |
Method | get_table_comment |
Return the "comment" for the table identified by table_name . |
Method | get_temp_table_names |
Return a list of temporary table names on the given connection, if supported by the underlying backend. |
Method | get_temp_view_names |
Return a list of temporary view names on the given connection, if supported by the underlying backend. |
Method | get_unique_constraints |
Return information about unique constraints in table_name . |
Method | on_connect_url |
return a callable which sets up a newly created DBAPI connection. |
Class Variable | _has_events |
Undocumented |
sqlalchemy.dialects.mssql.mxodbc.MSDialect_mxodbc
, sqlalchemy.dialects.mssql.pyodbc.MSDialect_pyodbc
Undocumented
Return the string name of the currently selected schema from the given connection.
This is used by the default implementation to populate the "default_schema_name" attribute and is called exactly once upon first connect.
Parameters | |
connection | a _engine.Connection . |
name | savepoint name. |
Parameters | |
connection | a _engine.Connection . |
name | savepoint name. |
Return information about columns in table_name
.
Given a _engine.Connection
, a string
table_name
, and an optional string schema
, return column
information as a list of dictionaries with these keys:
Additional column attributes may be present.
Return information about foreign_keys in table_name
.
Given a _engine.Connection
, a string
table_name
, and an optional string schema
, return foreign
key information as a list of dicts with these keys:
Return information about indexes in table_name
.
Given a _engine.Connection
, a string
table_name
and an optional string schema
, return index
information as a list of dictionaries with these keys:
Given a DBAPI connection, return its isolation level.
When working with a _engine.Connection
object,
the corresponding
DBAPI connection may be procured using the
_engine.Connection.connection
accessor.
Note that this is a dialect-level method which is used as part
of the implementation of the _engine.Connection
and
_engine.Engine
isolation level facilities;
these APIs should be preferred for most typical use cases.
See Also
_engine.Connection.get_isolation_level
- view current level
_engine.Connection.default_isolation_level
- view default level
:paramref:`.Connection.execution_options.isolation_level` -
set per _engine.Connection
isolation level
:paramref:`_sa.create_engine.isolation_level` -
set per _engine.Engine
isolation level
Return information about the primary key constraint on table_name`.
Given a _engine.Connection
, a string
table_name
, and an optional string schema
, return primary
key information as a dictionary with these keys:
Return a list of all sequence names available in the database.
Parameters | |
connection | Undocumented |
dbname | Undocumented |
owner | Undocumented |
schema | schema name to query, if not the default schema. |
**kw | Undocumented |
schema
.Return view definition.
Given a _engine.Connection
, a string
view_name
, and an optional string schema
, return the view
definition.
Parameters | |
connection | Undocumented |
dbname | Undocumented |
owner | Undocumented |
schema | schema name to query, if not the default schema. |
**kw | Undocumented |
Check the existence of a particular sequence in the database.
Given a _engine.Connection
object and a string
sequence_name
, return True if the given sequence exists in
the database, False otherwise.
For internal dialect use, check the existence of a particular table in the database.
Given a _engine.Connection
object, a string table_name and
optional schema name, return True if the given table exists in the
database, False otherwise.
This method serves as the underlying implementation of the
public facing .Inspector.has_table
method, and is also used
internally to implement the "checkfirst" behavior for methods like
_schema.Table.create
and _schema.MetaData.create_all
.
Note
This method is used internally by SQLAlchemy, and is
published so that third-party dialects may provide an
implementation. It is not the public API for checking for table
presence. Please use the .Inspector.has_table
method.
Alternatively, for legacy cross-compatibility, the
_engine.Engine.has_table
method may be used.
Called during strategized creation of the dialect with a connection.
Allows dialects to configure options based on server version info or other properties.
The connection passed here is a SQLAlchemy Connection object, with full capabilities.
The initialize() method of the base dialect should be called via super().
Note
as of SQLAlchemy 1.4, this method is called before
any _engine.Dialect.on_connect
hooks are called.
sqlalchemy.dialects.mssql.pyodbc.MSDialect_pyodbc
return a callable which sets up a newly created DBAPI connection.
The callable should accept a single argument "conn" which is the DBAPI connection itself. The inner callable has no return value.
E.g.:
class MyDialect(default.DefaultDialect): # ... def on_connect(self): def do_on_connect(connection): connection.execute("SET SPECIAL FLAGS etc") return do_on_connect
This is used to set dialect-wide per-connection options such as isolation modes, Unicode modes, etc.
The "do_on_connect" callable is invoked by using the
_events.PoolEvents.connect
event
hook, then unwrapping the DBAPI connection and passing it into the
callable.
_engine.Dialect.initialize
method however.If None is returned, no event listener is generated.
See Also
.Dialect.connect
- allows the DBAPI connect() sequence
itself to be controlled.
.Dialect.on_connect_url
- supersedes
.Dialect.on_connect
to also receive the
_engine.URL
object in context.
Returns | |
a callable that accepts a single DBAPI connection as an argument, or None. |
sqlalchemy.dialects.mssql.pymssql.MSDialect_pymssql
Given a DBAPI connection, set its isolation level.
Note that this is a dialect-level method which is used as part
of the implementation of the _engine.Connection
and
_engine.Engine
isolation level facilities; these APIs should be preferred for
most typical use cases.
See Also
_engine.Connection.get_isolation_level
- view current level
_engine.Connection.default_isolation_level
- view default level
:paramref:`.Connection.execution_options.isolation_level` -
set per _engine.Connection
isolation level
:paramref:`_sa.create_engine.isolation_level` -
set per _engine.Engine
isolation level
Optional set of argument specifiers for various SQLAlchemy constructs, typically schema items.
To implement, establish as a series of tuples, as in:
construct_arguments = [ (schema.Index, { "using": False, "where": None, "ops": None }) ]
If the above construct is established on the PostgreSQL dialect,
the .Index
construct will now accept the keyword arguments
postgresql_using, postgresql_where, nad postgresql_ops.
Any other argument specified to the constructor of .Index
which is prefixed with postgresql_ will raise .ArgumentError
.
A dialect which does not include a construct_arguments member will not participate in the argument validation system. For such a dialect, any argument name is accepted by all participating constructs, within the namespace of arguments prefixed with that dialect name. The rationale here is so that third-party dialects that haven't yet implemented this feature continue to function in the old way.
See Also
.DialectKWArgs
- implementing base class which consumes
.DefaultDialect.construct_arguments
bool
=
sqlalchemy.dialects.mssql.mxodbc.MSDialect_mxodbc
, sqlalchemy.dialects.mssql.pymssql.MSDialect_pymssql
, sqlalchemy.dialects.mssql.pyodbc.MSDialect_pyodbc
indicates if this dialect supports caching.
All dialects that are compatible with statement caching should set this flag to True directly on each dialect class and subclass that supports it. SQLAlchemy tests that this flag is locally present on each dialect subclass before it will use statement caching. This is to provide safety for legacy or new dialects that are not yet fully tested to be compliant with SQL statement caching.
See Also