summaryrefslogtreecommitdiff
path: root/migrate/changeset/ansisql.py
diff options
context:
space:
mode:
authorchristian.simms <unknown>2008-08-28 01:17:44 +0000
committerchristian.simms <unknown>2008-08-28 01:17:44 +0000
commitf687cd3fe04737ffe3ef7dd5aded1a8f781c93f9 (patch)
tree3f46249456ffce6b344fc51f394bfc2ed9804b05 /migrate/changeset/ansisql.py
parentaba0f506811ba2a8ff0bee6a0995f8690ffaa48e (diff)
downloadsqlalchemy-migrate-f687cd3fe04737ffe3ef7dd5aded1a8f781c93f9.tar.gz
add support for SA 0.5
Diffstat (limited to 'migrate/changeset/ansisql.py')
-rw-r--r--migrate/changeset/ansisql.py12
1 files changed, 4 insertions, 8 deletions
diff --git a/migrate/changeset/ansisql.py b/migrate/changeset/ansisql.py
index 34a34bc..cab07d4 100644
--- a/migrate/changeset/ansisql.py
+++ b/migrate/changeset/ansisql.py
@@ -124,7 +124,8 @@ class ANSISchemaChanger(AlterTableVisitor,SchemaGenerator):
self._run_subvisit(delta,self._visit_column_type)
if 'nullable' in keys:
self._run_subvisit(delta,self._visit_column_nullable)
- if 'default' in keys:
+ if 'server_default' in keys:
+ # Skip 'default': only handle server-side defaults, others are managed by the app, not the db.
self._run_subvisit(delta,self._visit_column_default)
#if 'primary_key' in keys:
# #self._run_subvisit(delta,self._visit_column_primary_key)
@@ -172,14 +173,9 @@ class ANSISchemaChanger(AlterTableVisitor,SchemaGenerator):
else:
self.append("SET NOT NULL")
def _visit_column_default(self,table_name,col_name,delta):
- default = delta['default']
- # Default must be a PassiveDefault; else, ignore
- # (Non-PassiveDefaults are managed by the app, not the db)
- if default is not None:
- if not isinstance(default,sa.PassiveDefault):
- return
+ server_default = delta['server_default']
# Dummy column: get_col_default_string needs a column for some reason
- dummy = sa.Column(None,None,default=default)
+ dummy = sa.Column(None,None,server_default=server_default)
default_text = self.get_column_default_string(dummy)
self.start_alter_table(table_name)
self.append("ALTER COLUMN %s "%col_name)