r4748: Auto commit for Debian build
[umlisp.git] / sql-classes.lisp
index e954fe83278928f9ce63085d1a07b7047c038b6d..b3994ef16a580fa4eb621eb725aaabf41a65198b 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Author:        Kevin M. Rosenberg
 ;;;; Date Started:  Apr 2000
 ;;;;
-;;;; $Id: sql-classes.lisp,v 1.20 2003/05/03 00:27:30 kevin Exp $
+;;;; $Id: sql-classes.lisp,v 1.23 2003/05/03 18:16:16 kevin Exp $
 ;;;;
 ;;;; This file, part of UMLisp, is
 ;;;;    Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
@@ -92,6 +92,18 @@ is OBJNAME from TABLE where WHERE-NAME field = WHERE-VALUE with FIELDS"
                   :pfstr kpfstr
                   :lrl (ensure-integer kcuilrl))))
 
+(defun find-ucon-cui-old (cui &key (srl *current-srl*))
+  "Find ucon for a cui"
+  (when (stringp cui) (setq cui (parse-cui cui)))
+  (when cui
+    (let ((ls (format nil "select KPFSTR,KCUILRL from MRCON where CUI=~d" cui)))
+      (when srl
+       (string-append ls (format nil " and KCUILRL <= ~d" srl)))
+      (string-append ls " limit 1")
+      (awhen (car (mutex-sql-query ls))
+            (destructuring-bind (kpfstr kcuilrl)
+                (make-instance 'ucon :cui cui :pfstr kpfstr
+                           :lrl (ensure-integer kcuilrl)))))))
 
 (defun find-ucon-cui-sans-pfstr (cui &key (srl *current-srl*))
   "Find ucon for a cui"
@@ -134,24 +146,6 @@ is OBJNAME from TABLE where WHERE-NAME field = WHERE-VALUE with FIELDS"
     (make-instance 'ucon :cui (ensure-integer cui) :pfstr kpfstr
                   :lrl (ensure-integer kcuilrl))))
 
-(defun f2 (&key (srl *current-srl*))
-  "Return list of all ucon's"
-  (with-umlisp-query ('mrcon (cui kpfstr kcuilrl) srl nil nil)
-    (make-instance 'ucon :cui (ensure-integer cui) :pfstr kpfstr
-                  :lrl (ensure-integer kcuilrl))))
-
-(defun f1 (&key (srl *current-srl*))
-  "Return list of all ucon's"
-  (with-sql-connection (db)
-    (clsql:map-query 
-     'list
-     #'(lambda (cui pfstr cuilrl)
-        (make-instance 'ucon :cui (ensure-integer cui)
-                       :pfstr pfstr
-                       :lrl (ensure-integer cuilrl)))
-     (query-string 'mrcon '(cui kpfstr kcuilrl) srl nil nil)
-     :database db)))
-
 (defun find-ucon-all (&key (srl *current-srl*))
   "Return list of all ucon's"
   (with-sql-connection (db)