diff options
author | mike bayer <mike_mp@zzzcomputing.com> | 2021-04-14 17:21:36 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@ci3.zzzcomputing.com> | 2021-04-14 17:21:36 +0000 |
commit | ccff3a14db356ba435d77f2958e87ca8013f6ce4 (patch) | |
tree | 04b9c5be595f3ae7a2d47eb6a8fd633471a7fe2f /lib/sqlalchemy/dialects | |
parent | b26cf96462b195a4c12ccdf8283ef028f91eb872 (diff) | |
parent | 94a1c523984e2082bb16d784cf8615061ba9d49a (diff) | |
download | sqlalchemy-ccff3a14db356ba435d77f2958e87ca8013f6ce4.tar.gz |
Merge "Support DEFAULT VALUES and VALUES(DEFAULT) individually"
Diffstat (limited to 'lib/sqlalchemy/dialects')
-rw-r--r-- | lib/sqlalchemy/dialects/mysql/base.py | 5 | ||||
-rw-r--r-- | lib/sqlalchemy/dialects/oracle/base.py | 4 | ||||
-rw-r--r-- | lib/sqlalchemy/dialects/postgresql/base.py | 3 | ||||
-rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 5 |
4 files changed, 17 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/mysql/base.py b/lib/sqlalchemy/dialects/mysql/base.py index f45d5ec91..c5113b054 100644 --- a/lib/sqlalchemy/dialects/mysql/base.py +++ b/lib/sqlalchemy/dialects/mysql/base.py @@ -2534,6 +2534,11 @@ class MySQLDialect(default.DefaultDialect): supports_for_update_of = False # default for MySQL ... # ... may be updated to True for MySQL 8+ in initialize() + # MySQL doesn't support "DEFAULT VALUES" but *does* support + # "VALUES (DEFAULT)" + supports_default_values = False + supports_default_metavalue = True + supports_sane_rowcount = True supports_sane_multi_rowcount = False supports_multivalues_insert = True diff --git a/lib/sqlalchemy/dialects/oracle/base.py b/lib/sqlalchemy/dialects/oracle/base.py index 6496c4f71..3e1f50fc8 100644 --- a/lib/sqlalchemy/dialects/oracle/base.py +++ b/lib/sqlalchemy/dialects/oracle/base.py @@ -1453,7 +1453,11 @@ class OracleDialect(default.DefaultDialect): requires_name_normalize = True supports_comments = True + + # Oracle supports these syntaxes but I'm not able to get them + # to work with RETURNING which we usually need supports_default_values = False + supports_default_metavalue = True supports_empty_insert = False statement_compiler = OracleCompiler diff --git a/lib/sqlalchemy/dialects/postgresql/base.py b/lib/sqlalchemy/dialects/postgresql/base.py index 3b419ed16..0e9968031 100644 --- a/lib/sqlalchemy/dialects/postgresql/base.py +++ b/lib/sqlalchemy/dialects/postgresql/base.py @@ -3079,6 +3079,9 @@ class PGDialect(default.DefaultDialect): supports_comments = True supports_default_values = True + + supports_default_metavalue = True + supports_empty_insert = False supports_multivalues_insert = True default_paramstyle = "pyformat" diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index 28901d028..0075b3876 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -1791,7 +1791,12 @@ class SQLiteDialect(default.DefaultDialect): supports_alter = False supports_unicode_statements = True supports_unicode_binds = True + + # SQlite supports "DEFAULT VALUES" but *does not* support + # "VALUES (DEFAULT)" supports_default_values = True + supports_default_metavalue = False + supports_empty_insert = False supports_cast = True supports_multivalues_insert = True |