summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases/firebird.py
diff options
context:
space:
mode:
authorLele Gaifax <lele@metapensiero.it>2008-05-12 10:09:16 +0000
committerLele Gaifax <lele@metapensiero.it>2008-05-12 10:09:16 +0000
commit5200cd16f5ffc481c76432be1d597f19a3812ec8 (patch)
tree4544afe1a23e9ae2e02ee475fbd823d11dcb7100 /lib/sqlalchemy/databases/firebird.py
parent973bc8831cf73e7498df57f89035276feda02b2f (diff)
downloadsqlalchemy-5200cd16f5ffc481c76432be1d597f19a3812ec8.tar.gz
Use a BLOB when asked for a [VAR]CHAR without a length under Firebird
Diffstat (limited to 'lib/sqlalchemy/databases/firebird.py')
-rw-r--r--lib/sqlalchemy/databases/firebird.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/sqlalchemy/databases/firebird.py b/lib/sqlalchemy/databases/firebird.py
index 098759d18..9f9dcd634 100644
--- a/lib/sqlalchemy/databases/firebird.py
+++ b/lib/sqlalchemy/databases/firebird.py
@@ -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):