diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2022-08-04 13:32:17 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2022-08-04 13:32:17 +0000 |
| commit | 0027b3a4bc54599ac8102a4a3d81d8007738903e (patch) | |
| tree | 5355294f6a81c5b413684dd371cc58c94bdcb5ab /lib/sqlalchemy | |
| parent | dc5a1c482ee1a8faf15fd81db866e5f72c1c719f (diff) | |
| parent | f684bb7659ff195d4c55414162c1de4fbfdafc2f (diff) | |
| download | sqlalchemy-0027b3a4bc54599ac8102a4a3d81d8007738903e.tar.gz | |
Merge "ensure RETURNING renders in stringify w/ no server version" into main
Diffstat (limited to 'lib/sqlalchemy')
| -rw-r--r-- | lib/sqlalchemy/dialects/mysql/base.py | 6 | ||||
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 7 | ||||
| -rw-r--r-- | lib/sqlalchemy/engine/default.py | 4 |
3 files changed, 15 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} diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index cab96eac1..4b312dceb 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -903,6 +903,10 @@ class StrCompileDialect(DefaultDialect): type_compiler_cls = compiler.StrSQLTypeCompiler preparer = compiler.IdentifierPreparer + insert_returning = True + update_returning = True + delete_returning = True + supports_statement_cache = True supports_identity_columns = True |
