diff options
author | jan.dittberner <unknown> | 2009-01-10 13:11:08 +0000 |
---|---|---|
committer | jan.dittberner <unknown> | 2009-01-10 13:11:08 +0000 |
commit | 979b8b19dc0888e6f99191cf3ed88a1f87f598df (patch) | |
tree | 3b816d2e9dd108eb0ab06ad485b5a6561aedbb89 /migrate/changeset/ansisql.py | |
parent | f1039d3f858167d0ee72fa8a6a1b5dcc31088b38 (diff) | |
download | sqlalchemy-migrate-979b8b19dc0888e6f99191cf3ed88a1f87f598df.tar.gz |
integrate patch for supporting CheckConstraints by srittau.
Fixes Issue #31
needs a test case
Diffstat (limited to 'migrate/changeset/ansisql.py')
-rw-r--r-- | migrate/changeset/ansisql.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/migrate/changeset/ansisql.py b/migrate/changeset/ansisql.py index d711d5a..e188100 100644 --- a/migrate/changeset/ansisql.py +++ b/migrate/changeset/ansisql.py @@ -250,6 +250,8 @@ class ANSIConstraintGenerator(ANSIConstraintCommon): ) ret = "CONSTRAINT %(name)s FOREIGN KEY (%(columns)s) "\ "REFERENCES %(reftable)s (%(referenced)s)"%params + elif isinstance(cons,constraint.CheckConstraint): + ret = "CHECK (%s)"%cons.sqltext else: raise exceptions.InvalidConstraintError(cons) return ret @@ -266,6 +268,9 @@ class ANSIConstraintGenerator(ANSIConstraintCommon): def visit_migrate_foreign_key_constraint(self,*p,**k): return self._visit_constraint(*p,**k) + def visit_migrate_check_constraint(self,*p,**k): + return self._visit_constraint(*p,**k) + class ANSIConstraintDropper(ANSIConstraintCommon): def _visit_constraint(self,constraint): self.start_alter_table(constraint) @@ -279,6 +284,9 @@ class ANSIConstraintDropper(ANSIConstraintCommon): def visit_migrate_foreign_key_constraint(self,*p,**k): return self._visit_constraint(*p,**k) + def visit_migrate_check_constraint(self,*p,**k): + return self._visit_constraint(*p,**k) + class ANSIDialect(object): columngenerator = ANSIColumnGenerator columndropper = ANSIColumnDropper |