summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2008-10-24 17:09:58 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2008-10-24 17:09:58 +0000
commitecf22b390b3d3b44d6094ee0355748b4d163fccb (patch)
treed4239256f5c2770fa31f1821806a274385423ae0 /lib/sqlalchemy/databases
parent3bbf8037f8408b590d64624b7ce71963053f555c (diff)
downloadsqlalchemy-ecf22b390b3d3b44d6094ee0355748b4d163fccb.tar.gz
auto_convert_lobs=False honored by OracleBinary, OracleText types
[ticket:1178]
Diffstat (limited to 'lib/sqlalchemy/databases')
-rw-r--r--lib/sqlalchemy/databases/oracle.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py
index 7be33d269..ffd52c38c 100644
--- a/lib/sqlalchemy/databases/oracle.py
+++ b/lib/sqlalchemy/databases/oracle.py
@@ -81,10 +81,7 @@ The conversion of LOB objects by this dialect is unique in SQLAlchemy in that it
for all statement executions, even plain string-based statements for which SQLA has no awareness
of result typing. This is so that calls like fetchmany() and fetchall() can work in all cases
without raising cursor errors. The conversion of LOB in all cases, as well as the "prefetch"
-of LOB objects, can be disabled using auto_convert_lobs=False. However, OracleBinary type
-objects will still issue the conversion of LOBs upon access - use a string-based or otherwise
-untyped select() construct, or a custom Binary type, to retrieve LOB objects directly in this case.
-A future release may include a flag on OracleBinary to further disable LOB conversion at that level.
+of LOB objects, can be disabled using auto_convert_lobs=False.
LIMIT/OFFSET Support
@@ -207,6 +204,8 @@ class OracleText(sqltypes.Text):
def result_processor(self, dialect):
super_process = super(OracleText, self).result_processor(dialect)
+ if not dialect.auto_convert_lobs:
+ return super_process
lob = dialect.dbapi.LOB
def process(value):
if isinstance(value, lob):
@@ -237,6 +236,8 @@ class OracleBinary(sqltypes.Binary):
return None
def result_processor(self, dialect):
+ if not dialect.auto_convert_lobs:
+ return None
lob = dialect.dbapi.LOB
def process(value):
if isinstance(value, lob):