diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-10-01 23:00:02 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2009-10-01 23:00:02 +0000 |
| commit | 8e8da289d5fb0f1f74d588ebf3da155203d5bef1 (patch) | |
| tree | cb57c7bdb9850d570e03f12d7e69a3739ab2acf7 /lib/sqlalchemy/dialects/sqlite | |
| parent | ddbcf97f3343f9ccad1a04b258086b7f55577c43 (diff) | |
| download | sqlalchemy-8e8da289d5fb0f1f74d588ebf3da155203d5bef1.tar.gz | |
- boolean, int, and float arguments count as "cache key" values for inspector info_cache()
- added awareness of sqlite implicit auto indexes [ticket:1551]
Diffstat (limited to 'lib/sqlalchemy/dialects/sqlite')
| -rw-r--r-- | lib/sqlalchemy/dialects/sqlite/base.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/sqlalchemy/dialects/sqlite/base.py b/lib/sqlalchemy/dialects/sqlite/base.py index 8dea91d0a..c25e75f2c 100644 --- a/lib/sqlalchemy/dialects/sqlite/base.py +++ b/lib/sqlalchemy/dialects/sqlite/base.py @@ -498,6 +498,7 @@ class SQLiteDialect(default.DefaultDialect): pragma = "PRAGMA %s." % quote(schema) else: pragma = "PRAGMA " + include_auto_indexes = kw.pop('include_auto_indexes', False) qtable = quote(table_name) c = _pragma_cursor(connection.execute("%sindex_list(%s)" % (pragma, qtable))) indexes = [] @@ -505,6 +506,11 @@ class SQLiteDialect(default.DefaultDialect): row = c.fetchone() if row is None: break + # ignore implicit primary key index. + # http://www.mail-archive.com/sqlite-users@sqlite.org/msg30517.html + elif not include_auto_indexes and row[1].startswith('sqlite_autoindex'): + continue + indexes.append(dict(name=row[1], column_names=[], unique=row[2])) # loop thru unique indexes to get the column names. for idx in indexes: |
