diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-08-03 14:08:32 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2022-08-03 20:47:27 -0400 |
| commit | f684bb7659ff195d4c55414162c1de4fbfdafc2f (patch) | |
| tree | f5bb7d7a4d2e03af9470ed2c539acd33ae6462d9 /lib/sqlalchemy/dialects | |
| parent | ea6fb4ff5bcffcf71cdbc587504f10f03fe921ca (diff) | |
| download | sqlalchemy-f684bb7659ff195d4c55414162c1de4fbfdafc2f.tar.gz | |
ensure RETURNING renders in stringify w/ no server version
just in my own testing, if I say insert().return_defaults()
and stringify, I should see it, so make sure all the dialects
default to "insert_returning" etc. , with downgrade on
server version check.
Change-Id: Id64e78fcb03c48b5dcb0feb21cb9cc495edd15e9
Diffstat (limited to 'lib/sqlalchemy/dialects')
| -rw-r--r-- | lib/sqlalchemy/dialects/mysql/base.py | 6 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 7 |
2 files changed, 11 insertions, 2 deletions
diff --git a/lib/sqlalchemy/dialects/mysql/base.py b/lib/sqlalchemy/dialects/mysql/base.py index 596ca34f2..9e7ba4646 100644 --- a/lib/sqlalchemy/dialects/mysql/base.py +++ b/lib/sqlalchemy/dialects/mysql/base.py @@ -2568,6 +2568,12 @@ class MySQLDialect(default.DefaultDialect): # this would have been set by the default dialect already, # so set it again self.identifier_preparer = self.preparer(self) + + # this will be updated on first connect in initialize() + # if using older mariadb version + self.delete_returning = True + self.insert_returning = True + self.is_mariadb = is_mariadb def do_begin_twophase(self, connection, xid): diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index ce688741f..222f3a137 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -1930,6 +1930,9 @@ class SQLiteDialect(default.DefaultDialect): tuple_in_values = True supports_statement_cache = True insert_null_pk_still_autoincrements = True + insert_returning = True + update_returning = True + delete_returning = True default_paramstyle = "qmark" execution_ctx_cls = SQLiteExecutionContext @@ -2037,10 +2040,10 @@ class SQLiteDialect(default.DefaultDialect): 14, ) - if self.dbapi.sqlite_version_info >= (3, 35): + if self.dbapi.sqlite_version_info < (3, 35): self.update_returning = ( self.delete_returning - ) = self.insert_returning = True + ) = self.insert_returning = False _isolation_lookup = util.immutabledict( {"READ UNCOMMITTED": 1, "SERIALIZABLE": 0} |
