diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-15 16:42:29 -0500 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-15 16:42:29 -0500 |
commit | dff5a404e489d5215da5aa30870b78aca8423de5 (patch) | |
tree | 39f6ae1949762d269f6a73e0315f0fa6910ceacd /lib/sqlalchemy/sql/compiler.py | |
parent | fc0ffac24155931c2db10d1a469e1f7898268e45 (diff) | |
download | sqlalchemy-dff5a404e489d5215da5aa30870b78aca8423de5.tar.gz |
- getting slightly more consistent behavior for the edge case of pk columns
with server default - autoincrement is now false with any server_default,
so these all return None, applies consistency to [ticket:2020], [ticket:2021].
if prefetch is desired a "default" should be used instead of server_default.
Diffstat (limited to 'lib/sqlalchemy/sql/compiler.py')
-rw-r--r-- | lib/sqlalchemy/sql/compiler.py | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/lib/sqlalchemy/sql/compiler.py b/lib/sqlalchemy/sql/compiler.py index ce98dfb83..d906bf5d4 100644 --- a/lib/sqlalchemy/sql/compiler.py +++ b/lib/sqlalchemy/sql/compiler.py @@ -1102,18 +1102,16 @@ class SQLCompiler(engine.Compiled): else: self.returning.append(c) else: - if ( - c.default is not None and \ - ( - self.dialect.supports_sequences or - not c.default.is_sequence - ) - ) or \ - self.dialect.preexecute_autoincrement_sequences: + if c.default is not None or \ + c is stmt.table._autoincrement_column and ( + self.dialect.supports_sequences or + self.dialect.preexecute_autoincrement_sequences + ): values.append( (c, self._create_crud_bind_param(c, None)) ) + self.prefetch.append(c) elif c.default is not None: |