X-Git-Url: http://git.kpe.io/?p=clsql.git;a=blobdiff_plain;f=db-oracle%2Foracle-sql.lisp;h=3f5cb4961b25f6e36981e5349387f72918f84460;hp=cbcfda84619a18f1ba434520a0ca7954d23b42ea;hb=ab37892bfa71e0d66021cc73f28cd189be30c81c;hpb=0b4cd1d96605598f9c7ff1adfe104474c3385e44 diff --git a/db-oracle/oracle-sql.lisp b/db-oracle/oracle-sql.lisp index cbcfda8..3f5cb49 100644 --- a/db-oracle/oracle-sql.lisp +++ b/db-oracle/oracle-sql.lisp @@ -37,11 +37,11 @@ likely that we'll have to worry about the CMUCL limit.")) (defmacro deref-vp (foreign-object) `(the vp-type (uffi:deref-pointer (the vpp-type ,foreign-object) :pointer-void))) -(defvar +unsigned-char-null-pointer+ +(uffi:def-pointer-var +unsigned-char-null-pointer+ (uffi:make-null-pointer :unsigned-char)) -(defvar +unsigned-short-null-pointer+ +(uffi:def-pointer-var +unsigned-short-null-pointer+ (uffi:make-null-pointer :unsigned-short)) -(defvar +unsigned-int-null-pointer+ +(uffi:def-pointer-var +unsigned-int-null-pointer+ (uffi:make-null-pointer :unsigned-int)) ;; constants - from OCI? @@ -99,7 +99,7 @@ likely that we'll have to worry about the CMUCL limit.")) (date-format :initarg :date-format :reader date-format - :initform "YYYY-MM-DD HH24:MI:SS\"+00\"") + :initform "YYYY-MM-DD HH24:MI:SS\".0\"") (date-format-length :type number :documentation @@ -503,7 +503,7 @@ the length of that format.") (uffi:with-foreign-strings ((c-stmt-string sql-stmt-string)) (let ((stmthp (uffi:allocate-foreign-object :pointer-void)) select-p) - + (uffi:with-foreign-object (stmttype :unsigned-short) (unwind-protect (progn @@ -522,10 +522,10 @@ the length of that format.") +oci-attr-stmt-type+ (deref-vp errhp) :database db) - + (setq select-p (= (uffi:deref-pointer stmttype :unsigned-short) 1)) (let ((iters (if select-p 0 1))) - + (oci-stmt-execute (deref-vp svchp) (deref-vp stmthp) (deref-vp errhp) @@ -535,7 +535,7 @@ the length of that format.") (unless select-p (oci-handle-free (deref-vp stmthp) +oci-htype-stmt+) (uffi:free-foreign-object stmthp)))) - + (cond (select-p (make-query-cursor db stmthp result-types field-names)) @@ -643,7 +643,6 @@ the length of that format.") (colname '(* :unsigned-char)) (colnamelen 'ub4) (colsize 'ub2) - (colsizesize 'ub4) (defnp ':pointer-void)) (let ((buffer nil) (sizeof nil))