]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
Use a BLOB when asked for a [VAR]CHAR without a length under Firebird
authorLele Gaifax <lele@metapensiero.it>
Mon, 12 May 2008 10:09:16 +0000 (10:09 +0000)
committerLele Gaifax <lele@metapensiero.it>
Mon, 12 May 2008 10:09:16 +0000 (10:09 +0000)
lib/sqlalchemy/databases/firebird.py

index 098759d183d2b22b14e43958ba6152c7ca77b5fd..9f9dcd634f88879e872167be72091009510b067e 100644 (file)
@@ -187,14 +187,20 @@ class FBString(sqltypes.String):
     """Handle ``VARCHAR(length)`` datatype."""
 
     def get_col_spec(self):
-        return "VARCHAR(%(length)s)" % {'length' : self.length}
+        if self.length:
+            return "VARCHAR(%(length)s)" % {'length' : self.length}
+        else:
+            return "BLOB SUB_TYPE 1"
 
 
 class FBChar(sqltypes.CHAR):
     """Handle ``CHAR(length)`` datatype."""
 
     def get_col_spec(self):
-        return "CHAR(%(length)s)" % {'length' : self.length}
+        if length:
+            return "CHAR(%(length)s)" % {'length' : self.length}
+        else:
+            return "BLOB SUB_TYPE 1"
 
 
 class FBBinary(sqltypes.Binary):