summaryrefslogtreecommitdiff
path: root/migrate/changeset/databases/sqlite.py
diff options
context:
space:
mode:
authorjan.dittberner <unknown>2009-02-18 20:08:37 +0000
committerjan.dittberner <unknown>2009-02-18 20:08:37 +0000
commit5ecec7c6800d62cc60f98e574cf161d3855c7243 (patch)
tree697289dd0424a5b2eda807ed81a7c5d134d511c3 /migrate/changeset/databases/sqlite.py
parentd7027d17a52ce23271cd136e71af65cc74081f4a (diff)
downloadsqlalchemy-migrate-5ecec7c6800d62cc60f98e574cf161d3855c7243.tar.gz
mark ALTER TABLE ADD FOREIGN KEY as unsupported by SQLite
update corresponding test case
Diffstat (limited to 'migrate/changeset/databases/sqlite.py')
-rw-r--r--migrate/changeset/databases/sqlite.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/migrate/changeset/databases/sqlite.py b/migrate/changeset/databases/sqlite.py
index e1a3bee..3748659 100644
--- a/migrate/changeset/databases/sqlite.py
+++ b/migrate/changeset/databases/sqlite.py
@@ -77,6 +77,17 @@ class SQLiteConstraintGenerator(ansisql.ANSIConstraintGenerator):
self.execute()
+class SQLiteFKGenerator(SQLiteSchemaChanger, ansisql.ANSIFKGenerator):
+ def visit_column(self, column):
+ """Create foreign keys for a column (table already exists); #32"""
+
+ if self.fk:
+ self._not_supported("ALTER TABLE ADD FOREIGN KEY")
+
+ if self.buffer.getvalue() !='':
+ self.execute()
+
+
class SQLiteConstraintDropper(ansisql.ANSIColumnDropper):
def visit_migrate_primary_key_constraint(self, constraint):
@@ -93,3 +104,4 @@ class SQLiteDialect(ansisql.ANSIDialect):
schemachanger = SQLiteSchemaChanger
constraintgenerator = SQLiteConstraintGenerator
constraintdropper = SQLiteConstraintDropper
+ columnfkgenerator = SQLiteFKGenerator