projects
/
clsql.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Version 5.0.3: Full foreign string internationalization support
[clsql.git]
/
db-oracle
/
oracle-objects.lisp
diff --git
a/db-oracle/oracle-objects.lisp
b/db-oracle/oracle-objects.lisp
index a5583ee4ea6c142dfa318541add6833af6f3973b..3e5a6b713e8866d828c9a062915b5c19cff7118d 100644
(file)
--- a/
db-oracle/oracle-objects.lisp
+++ b/
db-oracle/oracle-objects.lisp
@@
-4,8
+4,6
@@
;;;;
;;;; Name: oracle-objects.lisp
;;;;
;;;;
;;;; Name: oracle-objects.lisp
;;;;
-;;;; $Id$
-;;;;
;;;; This file is part of CLSQL.
;;;;
;;;; CLSQL users are granted the rights to distribute and use this software
;;;; This file is part of CLSQL.
;;;;
;;;; CLSQL users are granted the rights to distribute and use this software
@@
-17,62
+15,67
@@
(defmethod database-get-type-specifier (type args database (db-type (eql :oracle)))
(declare (ignore type args database))
(defmethod database-get-type-specifier (type args database (db-type (eql :oracle)))
(declare (ignore type args database))
- (format nil "VARCHAR2(~D)" *default-
varchar
-length*))
+ (format nil "VARCHAR2(~D)" *default-
string
-length*))
-(defmethod database-get-type-specifier ((type (eql 'integer)) args
- database (db-type (eql :oracle)))
+(defmethod database-get-type-specifier ((type (eql 'integer)) args
+
database (db-type (eql :oracle)))
(declare (ignore database))
(if args
(format nil "NUMBER(~A,~A)"
(declare (ignore database))
(if args
(format nil "NUMBER(~A,~A)"
- (or (first args) 38) (or (second args) 0))
+
(or (first args) 38) (or (second args) 0))
"INTEGER"))
(defmethod database-get-type-specifier ((type (eql 'bigint)) args
"INTEGER"))
(defmethod database-get-type-specifier ((type (eql 'bigint)) args
- database (db-type (eql :oracle)))
- (declare (ignore args database))
+
database (db-type (eql :oracle)))
+ (declare (ignore args database))
"CHAR(20)")
(defmethod database-get-type-specifier ((type (eql 'universal-time)) args
"CHAR(20)")
(defmethod database-get-type-specifier ((type (eql 'universal-time)) args
- database (db-type (eql :oracle)))
- (declare (ignore args database))
+
database (db-type (eql :oracle)))
+ (declare (ignore args database))
"CHAR(20)")
(defmethod database-get-type-specifier ((type (eql 'string)) args
"CHAR(20)")
(defmethod database-get-type-specifier ((type (eql 'string)) args
- database (db-type (eql :oracle)))
- (declare (ignore database))
+
database (db-type (eql :oracle)))
+ (declare (ignore database))
(if args
(format nil "CHAR(~A)" (car args))
(if args
(format nil "CHAR(~A)" (car args))
- (format nil "VARCHAR2(~D)" *default-
varchar
-length*)))
+ (format nil "VARCHAR2(~D)" *default-
string
-length*)))
(defmethod database-get-type-specifier ((type (eql 'varchar)) args
(defmethod database-get-type-specifier ((type (eql 'varchar)) args
- database (db-type (eql :oracle)))
- (declare (ignore database))
+
database (db-type (eql :oracle)))
+ (declare (ignore database))
(if args
(format nil "VARCHAR2(~A)" (car args))
(if args
(format nil "VARCHAR2(~A)" (car args))
- (format nil "VARCHAR2(~D)" *default-
varchar
-length*)))
+ (format nil "VARCHAR2(~D)" *default-
string
-length*)))
(defmethod database-get-type-specifier ((type (eql 'float)) args
(defmethod database-get-type-specifier ((type (eql 'float)) args
- database (db-type (eql :oracle)))
- (declare (ignore database))
+
database (db-type (eql :oracle)))
+ (declare (ignore database))
(if args
(format nil "NUMBER(~A,~A)" (or (first args) 38) (or (second args) 38))
"DOUBLE PRECISION"))
(defmethod database-get-type-specifier ((type (eql 'long-float)) args
(if args
(format nil "NUMBER(~A,~A)" (or (first args) 38) (or (second args) 38))
"DOUBLE PRECISION"))
(defmethod database-get-type-specifier ((type (eql 'long-float)) args
- database (db-type (eql :oracle)))
- (declare (ignore database))
+
database (db-type (eql :oracle)))
+ (declare (ignore database))
(if args
(format nil "NUMBER(~A,~A)"
(if args
(format nil "NUMBER(~A,~A)"
- (or (first args) 38) (or (second args) 38))
+
(or (first args) 38) (or (second args) 38))
"DOUBLE PRECISION"))
(defmethod database-get-type-specifier ((type (eql 'boolean)) args
"DOUBLE PRECISION"))
(defmethod database-get-type-specifier ((type (eql 'boolean)) args
- database (db-type (eql :oracle)))
+ database (db-type (eql :oracle)))
+ (declare (ignore args database))
+ "CHAR(1)")
+
+(defmethod database-get-type-specifier ((type (eql 'generalized-boolean)) args
+ database (db-type (eql :oracle)))
(declare (ignore args database))
"CHAR(1)")
(defmethod read-sql-value (val type
(declare (ignore args database))
"CHAR(1)")
(defmethod read-sql-value (val type
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
;;(format t "value is \"~A\" of type ~A~%" val (type-of val))
(declare (ignore type database))
(etypecase val
;;(format t "value is \"~A\" of type ~A~%" val (type-of val))
(declare (ignore type database))
(etypecase val
@@
-82,38
+85,44
@@
nil)))
(defmethod read-sql-value (val (type (eql 'integer))
nil)))
(defmethod read-sql-value (val (type (eql 'integer))
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore database))
val)
(defmethod read-sql-value (val (type (eql 'float))
(declare (ignore database))
val)
(defmethod read-sql-value (val (type (eql 'float))
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore database))
val)
(defmethod read-sql-value (val (type (eql 'boolean))
(declare (ignore database))
val)
(defmethod read-sql-value (val (type (eql 'boolean))
- database (db-type (eql :oracle)))
+ database (db-type (eql :oracle)))
+ (declare (ignore database))
+ (when (char-equal #\t (schar val 0))
+ t))
+
+(defmethod read-sql-value (val (type (eql 'generalized-boolean))
+ database (db-type (eql :oracle)))
(declare (ignore database))
(when (char-equal #\t (schar val 0))
t))
(defmethod read-sql-value (val (type (eql 'bigint))
(declare (ignore database))
(when (char-equal #\t (schar val 0))
t))
(defmethod read-sql-value (val (type (eql 'bigint))
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore database))
(parse-integer val))
(defmethod read-sql-value (val (type (eql 'universal-time))
(declare (ignore database))
(parse-integer val))
(defmethod read-sql-value (val (type (eql 'universal-time))
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore database))
(parse-integer val))
(defmethod database-get-type-specifier ((type (eql 'wall-time)) args
(declare (ignore database))
(parse-integer val))
(defmethod database-get-type-specifier ((type (eql 'wall-time)) args
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore args database))
"DATE")
(defmethod database-get-type-specifier ((type (eql 'duration)) args
(declare (ignore args database))
"DATE")
(defmethod database-get-type-specifier ((type (eql 'duration)) args
- database (db-type (eql :oracle)))
+
database (db-type (eql :oracle)))
(declare (ignore args database))
"NUMBER(38)")
(declare (ignore args database))
"NUMBER(38)")