diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-11 15:22:46 -0500 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2011-01-11 15:22:46 -0500 |
| commit | 67e0f356b2093fdc03303d50be1f89e75e847c7f (patch) | |
| tree | e2209edb3a8aeb16702bc47573b9809a8e521db5 /lib/sqlalchemy/dialects/sqlite | |
| parent | 0342a4886f00b34cf02e0d2d986a0896ba946788 (diff) | |
| download | sqlalchemy-67e0f356b2093fdc03303d50be1f89e75e847c7f.tar.gz | |
- A TypeDecorator of Integer can be used with a primary key
column, and the "autoincrement" feature of various dialects
as well as the "sqlite_autoincrement" flag will honor
the underlying database type as being Integer-based.
[ticket:2005]
- Result-row processors are applied to pre-executed SQL
defaults, as well as cursor.lastrowid, when determining
the contents of result.inserted_primary_key.
[ticket:2006]
- Bind parameters present in the "columns clause" of a select
are now auto-labeled like other "anonymous" clauses,
which among other things allows their "type" to be meaningful
when the row is fetched, as in result row processors.
- TypeDecorator is present in the "sqlalchemy" import space.
Diffstat (limited to 'lib/sqlalchemy/dialects/sqlite')
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index c52668762..ac0fde846 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -249,7 +249,7 @@ class SQLiteDDLCompiler(compiler.DDLCompiler): if column.primary_key and \ column.table.kwargs.get('sqlite_autoincrement', False) and \ len(column.table.primary_key.columns) == 1 and \ - isinstance(column.type, sqltypes.Integer) and \ + issubclass(column.type._type_affinity, sqltypes.Integer) and \ not column.foreign_keys: colspec += " PRIMARY KEY AUTOINCREMENT" @@ -263,7 +263,7 @@ class SQLiteDDLCompiler(compiler.DDLCompiler): c = list(constraint)[0] if c.primary_key and \ c.table.kwargs.get('sqlite_autoincrement', False) and \ - isinstance(c.type, sqltypes.Integer) and \ + issubclass(c.type._type_affinity, sqltypes.Integer) and \ not c.foreign_keys: return None |
