supports_sequences = True
sequences_optional = False
supports_default_values = True
- preexecute_pk_sequences = True
postfetch_lastrowid = False
requires_name_normalize = True
max_identifier_length = 32
supports_sane_rowcount = True
supports_sane_multi_rowcount = False
- preexecute_pk_sequences = True
preparer = MaxDBIdentifierPreparer
statement_compiler = MaxDBCompiler
schema_name = "dbo"
colspecs = colspecs
ischema_names = ischema_names
- preexecute_pk_sequences = True
supports_unicode_binds = True
postfetch_lastrowid = True
jdbc_db_name = 'mysql'
jdbc_driver_name = 'com.mysql.jdbc.Driver'
- preexecute_pk_sequences = True
-
colspecs = util.update_copy(
MySQLDialect.colspecs,
{
supports_sequences = True
sequences_optional = False
- preexecute_pk_sequences = True
postfetch_lastrowid = False
default_paramstyle = 'named'
supports_sequences = True
sequences_optional = True
- preexecute_pk_sequences = True
preexecute_autoincrement_sequences = True
postfetch_lastrowid = False
``UPDATE`` and ``DELETE`` statements when executed via
executemany.
- preexecute_pk_sequences
- Indicate if the dialect should pre-execute sequences or default
- generation functions on primary key columns during an INSERT, if
- it's desired that the new row's primary key be available after execution.
- Pre-execution is disabled if the database supports "returning"
- and "implicit_returning" is True.
-
preexecute_autoincrement_sequences
True if 'implicit' primary key functions must be executed separately
in order to get their value. This is currently oriented towards
supports_sequences = False
sequences_optional = False
- preexecute_pk_sequences = False
preexecute_autoincrement_sequences = False
postfetch_lastrowid = True
implicit_returning = False
# create a list of column assignment clauses as tuples
values = []
- #need_pks = self.isinsert and not self.inline
-
- #implicit_returning = need_pks and \
- # self.dialect.implicit_returning and \
- # stmt.table.implicit_returning and \
- # not self.statement._returning and \
+ need_pks = self.isinsert and \
+ not self.inline and \
+ not self.statement._returning
- implicit_returning = self.dialect.implicit_returning and \
+ implicit_returning = need_pks and \
+ self.dialect.implicit_returning and \
stmt.table.implicit_returning
for c in stmt.table.columns:
elif isinstance(c, schema.Column):
if self.isinsert:
- # TODO: need to mix this around some more until
- # conditionals are reduced. might want to
- # do primary key, then sequence/column default/none,
- # then implicit_returning/supports sequence/doesnt
if c.primary_key and \
+ need_pks and \
(
- self.dialect.preexecute_pk_sequences or
c is not stmt.table._autoincrement_column or
- implicit_returning
- ) and \
- not self.inline and \
- not self.statement._returning:
+ not self.dialect.postfetch_lastrowid
+ ):
if implicit_returning:
if isinstance(c.default, schema.Sequence):