summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/databases
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2006-07-26 18:05:36 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2006-07-26 18:05:36 +0000
commit369ffb7816b83f0b6fbee7e6ecd743655ad2a5a7 (patch)
tree676694467423279daa18cd72c3fd19a9a5b6f3c3 /lib/sqlalchemy/databases
parent3c14b364ba31708aa8f6f43a62689c1fe6e9eac3 (diff)
downloadsqlalchemy-369ffb7816b83f0b6fbee7e6ecd743655ad2a5a7.tar.gz
oracle boolean type [ticket:257]
Diffstat (limited to 'lib/sqlalchemy/databases')
-rw-r--r--lib/sqlalchemy/databases/oracle.py16
1 files changed, 15 insertions, 1 deletions
diff --git a/lib/sqlalchemy/databases/oracle.py b/lib/sqlalchemy/databases/oracle.py
index 897ed640e..6ca81c662 100644
--- a/lib/sqlalchemy/databases/oracle.py
+++ b/lib/sqlalchemy/databases/oracle.py
@@ -52,7 +52,21 @@ class OracleBinary(sqltypes.Binary):
return "BLOB"
class OracleBoolean(sqltypes.Boolean):
def get_col_spec(self):
- return "BOOLEAN"
+ return "SMALLINT"
+ def convert_result_value(self, value, dialect):
+ if value is None:
+ return None
+ return value and True or False
+ def convert_bind_param(self, value, dialect):
+ if value is True:
+ return 1
+ elif value is False:
+ return 0
+ elif value is None:
+ return None
+ else:
+ return value and True or False
+
colspecs = {
sqltypes.Integer : OracleInteger,