From: Kevin M. Rosenberg Date: Mon, 19 Apr 2004 12:38:32 +0000 (+0000) Subject: r9096: quote numbers so that postgresql will index on bigint X-Git-Tag: v2006ac.2~106 X-Git-Url: http://git.kpe.io/?p=umlisp.git;a=commitdiff_plain;h=617605f4a0399de6dabe6b4124f31798b901bfe1 r9096: quote numbers so that postgresql will index on bigint --- diff --git a/package.lisp b/package.lisp index cbe8a5d..47c249a 100644 --- a/package.lisp +++ b/package.lisp @@ -59,6 +59,7 @@ #:umls-sql-passwd! #:umls-sql-db! #:umls-sql-host! + #:umls-sql-type! #:with-sql-connection #:mutex-sql-execute #:mutex-sql-query diff --git a/sql-classes.lisp b/sql-classes.lisp index 48e7d54..3611654 100644 --- a/sql-classes.lisp +++ b/sql-classes.lisp @@ -43,9 +43,9 @@ ,@(when %%where `((typecase ,where-value (fixnum - (prefixed-fixnum-string ,where-value #\= 10)) + (concatenate 'string "='" (prefixed-fixnum-string ,where-value #\0 10) "'")) (number - (concatenate 'string "=" (write-to-string ,where-value))) + (concatenate 'string "='" (write-to-string ,where-value) "'")) (null " is null") (t @@ -332,7 +332,7 @@ is OBJNAME from TABLE where WHERE-NAME field = WHERE-VALUE with FIELDS" (collect-umlisp-query (mrcoc (cui2 soc cot cof coa kpfstr2) srl cui1 cui :lrl klrl :order (cof asc)) (setq cui2 (ensure-integer cui2)) - (when (zerop cui2) (setq cui2 nil)) + (when (eql 0 cui2) (setq cui2 nil)) (make-instance 'ucoc :cui1 cui :cui2 (ensure-integer cui2) :soc soc :cot cot :cof (ensure-integer cof) :coa coa :pfstr2 kpfstr2))) @@ -479,13 +479,14 @@ is OBJNAME from TABLE where WHERE-NAME field = WHERE-VALUE with FIELDS" (ensure-sui-integer sui) (let ((ls "select CODE,ATN,SAB,ATV from MRSAT where ")) (cond - (sui (string-append ls "KCUISUI=" - (integer-string (make-cuisui cui sui) 14))) - (lui (string-append ls "KCUILUI=" + (sui (string-append ls "KCUISUI='" + (integer-string (make-cuisui cui sui) 14) + "'")) + (lui (string-append ls "KCUILUI='" (integer-string (make-cuilui cui lui) 14) - " and sui=0")) - (t (string-append ls "cui=" (prefixed-fixnum-string cui nil 7) - " and lui=0 and sui=0"))) + "' and sui='0'")) + (t (string-append ls "cui='" (prefixed-fixnum-string cui nil 7) + "' and lui='0' and sui='0'"))) (when srl (string-append ls " and KSRL<=" (prefixed-fixnum-string srl nil 3))) (loop for tuple in (mutex-sql-query ls) collect