]> git.ipfire.org Git - thirdparty/sqlalchemy/alembic.git/commitdiff
- add an additional fix to the MySQL fixes for re: #103.
authorMike Bayer <mike_mp@zzzcomputing.com>
Sat, 22 Mar 2014 20:21:00 +0000 (16:21 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sat, 22 Mar 2014 20:21:00 +0000 (16:21 -0400)
alembic/ddl/mysql.py
tests/test_mysql.py

index 3d954f6cf458bec0adfe0cf19a64028c032da595..088ba59b47b4d1d024778fb42add21a3ce53c119 100644 (file)
@@ -177,7 +177,7 @@ def _mysql_colspec(compiler, nullable, server_default, type_,
     )
     if autoincrement:
         spec += " AUTO_INCREMENT"
-    if server_default != False:
+    if server_default is not False and server_default is not None:
         spec += " DEFAULT %s" % _render_value(compiler, server_default)
 
     return spec
index f598d997a7dd62f5329fbb8070df3e483579de2d..16b171c43a3246a46178f5bcdf1400bf8f13ead9 100644 (file)
@@ -90,6 +90,8 @@ class MySQLOpTest(TestCase):
             'ALTER TABLE t ALTER COLUMN c DROP DEFAULT'
         )
 
+
+
     def test_alter_column_modify_default(self):
         context = op_fixture('mysql')
         # notice we dont need the existing type on this one...
@@ -127,6 +129,13 @@ class MySQLOpTest(TestCase):
             "ALTER TABLE t1 MODIFY c1 INTEGER NOT NULL DEFAULT 'q'"
         )
 
+    def test_alter_column_multi_alter_w_drop_default(self):
+        context = op_fixture('mysql')
+        op.alter_column('t1', 'c1', nullable=False, server_default=None, type_=Integer)
+        context.assert_(
+            "ALTER TABLE t1 MODIFY c1 INTEGER NOT NULL"
+        )
+
     def test_col_alter_type_required(self):
         op_fixture('mysql')
         assert_raises_message(