summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2007-01-23 20:25:48 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2007-01-23 20:25:48 +0000
commitb8662333bbd20194ca3117835e7e1ca0bb4d3c0b (patch)
tree99af5845375f62b0b73012c4cdd3ef6fbe3c35d6 /lib
parentb5673a19381bbdc170a2a2deff1c8fc74a087d62 (diff)
downloadsqlalchemy-b8662333bbd20194ca3117835e7e1ca0bb4d3c0b.tar.gz
- *slight* support for binary, but still need to figure out how to insert reasonably largerel_0_3_4
values (over 4K). requires auto_setinputsizes=True sent to create_engine(), rows must be fully fetched individually, etc.
Diffstat (limited to 'lib')
-rw-r--r--lib/sqlalchemy/databases/oracle.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py
index 3f257a460..6008ae61c 100644
--- a/lib/sqlalchemy/databases/oracle.py
+++ b/lib/sqlalchemy/databases/oracle.py
@@ -62,11 +62,15 @@ class OracleBinary(sqltypes.Binary):
return dbapi.BINARY
def get_col_spec(self):
return "BLOB"
-class OracleLongBinary(sqltypes.Binary):
- def get_dbapi_type(self, dbapi):
- return dbapi.LONG_BINARY
- def get_col_spec(self):
- return "LONGBLOB"
+ def convert_bind_param(self, value, dialect):
+ # this is RAWTOHEX
+ return ''.join(["%.2X" % ord(c) for c in value])
+ def convert_result_value(self, value, dialect):
+ if value is None:
+ return None
+ else:
+ return value.read()
+
class OracleBoolean(sqltypes.Boolean):
def get_col_spec(self):
return "SMALLINT"