X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=db-oracle%2Foracle-objects.lisp;h=5e88bb1933bf7dc553642d0c9c1676a52906a1e1;hb=981c14d37d3c6b4037df4a2e43a4a2be5f8b358a;hp=84a352cba819c6f99619f004e42874ecd763c811;hpb=155c60b5195d618ef93541699694d57a21be3246;p=clsql.git diff --git a/db-oracle/oracle-objects.lisp b/db-oracle/oracle-objects.lisp index 84a352c..5e88bb1 100644 --- a/db-oracle/oracle-objects.lisp +++ b/db-oracle/oracle-objects.lisp @@ -22,8 +22,14 @@ (declare (ignore type args)) (concatenate 'string "VARCHAR2(" *oracle-default-varchar2-length* ")")) +(defmethod database-get-type-specifier ((type (eql 'integer)) args (database oracle-database)) + (if args + (format nil "NUMBER(~A,~A)" + (or (first args) 38) (or (second args) 0)) + "INTEGER")) + (defmethod database-get-type-specifier - ((type (eql 'integer)) args (database oracle-database)) + ((type (eql 'bigint)) args (database oracle-database)) (if args (format nil "NUMBER(~A,~A)" (or (first args) 38) (or (second args) 0)) @@ -45,29 +51,26 @@ ((type (eql 'string)) args (database oracle-database)) (if args (format nil "VARCHAR2(~A)" (car args)) - (concatenate 'string "VARCHAR2(" *oracle-default-varchar2-length* ")")) - "VARCHAR2(512)") + (concatenate 'string "VARCHAR2(" *oracle-default-varchar2-length* ")"))) (defmethod database-get-type-specifier ((type (eql 'raw-string)) args (database oracle-database)) (if args (format nil "VARCHAR2(~A)" (car args)) - (concatenate 'string "VARCHAR2(" *oracle-default-varchar2-length* ")")) - "VARCHAR2(256)") + (concatenate 'string "VARCHAR2(" *oracle-default-varchar2-length* ")"))) (defmethod database-get-type-specifier ((type (eql 'float)) args (database oracle-database)) (if args - (format nil "NUMBER(~A,~A)" - (or (first args) 38) (or (second args) 38)) - "NUMBER")) + (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 oracle-database)) (if args (format nil "NUMBER(~A,~A)" (or (first args) 38) (or (second args) 38)) - "NUMBER")) + "double precision")) (defmethod database-get-type-specifier ((type (eql 'boolean)) args (database oracle-database)) @@ -83,10 +86,6 @@ (symbol nil))) -(defmethod read-sql-value (val (type (eql 'string)) database) - (declare (ignore database)) - val) - (defmethod read-sql-value (val (type (eql 'integer)) (database oracle-database)) val)