class PGDialect(default.DefaultDialect):
Known subclasses: sqlalchemy.dialects.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
, sqlalchemy.dialects.postgresql.pygresql.PGDialect_pygresql
, sqlalchemy.dialects.postgresql.pypostgresql.PGDialect_pypostgresql
Undocumented
Method | __init__ |
Undocumented |
Method | _get_column_info |
Undocumented |
Method | _get_default_schema_name |
Return the string name of the currently selected schema from the given connection. |
Method | _get_foreign_table_names |
Undocumented |
Method | _get_server_version_info |
Retrieve the server version info from the given connection. |
Method | _load_domains |
Undocumented |
Method | _load_enums |
Undocumented |
Method | _pg_index_any |
Undocumented |
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 | get_check_constraints |
Return information about check constraints in table_name . |
Method | get_columns |
Return information about columns in table_name . |
Method | get_deferrable |
Undocumented |
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_readonly |
Undocumented |
Method | get_schema_names |
Undocumented |
Method | get_sequence_names |
Return a list of all sequence names available in the database. |
Method | get_table_comment |
Return the "comment" for the table identified by table_name . |
Method | get_table_names |
Return a list of table names for schema . |
Method | get_table_oid |
Fetch the oid for schema.table_name. |
Method | get_unique_constraints |
Return information about unique constraints in table_name . |
Method | get_view_definition |
Return view definition. |
Method | get_view_names |
Return a list of all view names available in the database. |
Method | has_schema |
Undocumented |
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 | has_type |
Undocumented |
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_deferrable |
Undocumented |
Method | set_isolation_level |
Given a DBAPI connection, set its isolation level. |
Method | set_readonly |
Undocumented |
Class Variable | _isolation_lookup |
Undocumented |
Class Variable | connection_characteristics |
Undocumented |
Class Variable | construct_arguments |
Optional set of argument specifiers for various SQLAlchemy constructs, typically schema items. |
Class Variable | default_paramstyle |
Undocumented |
Class Variable | max_identifier_length |
Undocumented |
Class Variable | name |
Undocumented |
Class Variable | postfetch_lastrowid |
Undocumented |
Class Variable | preexecute_autoincrement_sequences |
Undocumented |
Class Variable | reflection_options |
Undocumented |
Class Variable | sequences_optional |
Undocumented |
Class Variable | supports_alter |
Undocumented |
Class Variable | supports_comments |
Undocumented |
Class Variable | supports_default_metavalue |
dialect supports INSERT... VALUES (DEFAULT) syntax |
Class Variable | supports_default_values |
dialect supports INSERT... DEFAULT VALUES syntax |
Class Variable | supports_empty_insert |
dialect supports INSERT () VALUES () |
Class Variable | supports_multivalues_insert |
Undocumented |
Class Variable | supports_native_boolean |
Undocumented |
Class Variable | supports_sane_rowcount |
Undocumented |
Class Variable | supports_sequences |
Undocumented |
Class Variable | supports_statement_cache |
indicates if this dialect supports caching. |
Instance Variable | _backslash_escapes |
Undocumented |
Instance Variable | _json_deserializer |
Undocumented |
Instance Variable | _json_serializer |
Undocumented |
Instance Variable | _supports_create_index_concurrently |
Undocumented |
Instance Variable | _supports_drop_index_concurrently |
Undocumented |
Instance Variable | colspecs |
Undocumented |
Instance Variable | full_returning |
Undocumented |
Instance Variable | implicit_returning |
Undocumented |
Instance Variable | isolation_level |
Undocumented |
Instance Variable | supports_identity_columns |
Undocumented |
Instance Variable | supports_native_enum |
Undocumented |
Instance Variable | supports_smallserial |
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_release_savepoint |
Release the named savepoint on a connection. |
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 | do_savepoint |
Create a savepoint with the given name. |
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. |
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 | cte_follows_insert |
Undocumented |
Class Variable | default_sequence_base |
Undocumented |
Class Variable | engine_config_types |
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 | non_native_boolean_check_constraint |
Undocumented |
Class Variable | requires_name_normalize |
Undocumented |
Class Variable | server_side_cursors |
Undocumented |
Class Variable | supports_for_update_of |
Undocumented |
Class Variable | supports_is_distinct_from |
Undocumented |
Class Variable | supports_native_decimal |
Undocumented |
Class Variable | supports_sane_multi_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_binds |
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 |
Instance Variable | server_version_info |
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 | do_set_input_sizes |
invoke the cursor.setinputsizes() method with appropriate arguments |
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 | on_connect_url |
return a callable which sets up a newly created DBAPI connection. |
Class Variable | _has_events |
Undocumented |
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.
Retrieve the server version info from the given connection.
This is used by the default implementation to populate the "server_version_info" attribute and is called exactly once upon first connect.
sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
Parameters | |
connection | a _engine.Connection . |
xid | xid |
sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
Parameters | |
connection | a _engine.Connection . |
xid | xid |
is_prepared | whether or not
.TwoPhaseTransaction.prepare was called. |
recover | if the recover flag was passed. |
sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
Parameters | |
connection | a _engine.Connection . |
xid | xid |
sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
Parameters | |
connection | a _engine.Connection . |
sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
Parameters | |
connection | a _engine.Connection . |
xid | xid |
is_prepared | whether or not
.TwoPhaseTransaction.prepare was called. |
recover | if the recover flag was passed. |
Return information about check constraints in table_name
.
Given a string table_name
and an optional string schema
, return
check constraint information as a list of dicts with these keys:
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 |
schema | schema name to query, if not the default schema. |
**kw | Undocumented |
Return the "comment" for the table identified by table_name
.
Given a string table_name
and an optional string schema
, return
table comment information as a dictionary with this key:
Raises NotImplementedError for dialects that don't support comments.
Fetch the oid for schema.table_name.
Several reflection methods require the table oid. The idea for using this method is that it can be fetched one time and cached for subsequent calls.
Return information about unique constraints in table_name
.
Given a string table_name
and an optional string schema
, return
unique constraint information as a list of dicts with these keys:
Return view definition.
Given a _engine.Connection
, a string
view_name
, and an optional string schema
, return the view
definition.
Parameters | |
connection | Undocumented |
schema | schema name to query, if not the default schema. |
include | Undocumented |
**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.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
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.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
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
sqlalchemy.dialects.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
Undocumented
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
str
=
bool
=
sqlalchemy.dialects.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
, sqlalchemy.dialects.postgresql.pygresql.PGDialect_pygresql
, sqlalchemy.dialects.postgresql.pypostgresql.PGDialect_pypostgresql
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
sqlalchemy.dialects.postgresql.asyncpg.PGDialect_asyncpg
, sqlalchemy.dialects.postgresql.pg8000.PGDialect_pg8000
, sqlalchemy.dialects.postgresql.psycopg2.PGDialect_psycopg2
, sqlalchemy.dialects.postgresql.pygresql.PGDialect_pygresql
, sqlalchemy.dialects.postgresql.pypostgresql.PGDialect_pypostgresql
Undocumented