X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=sql.lisp;h=49ac0539d160b0091c6437d2afd230cf7c1d23b2;hb=b00c85b41d3dbdbc9bc5b460b6d527115ecb3641;hp=d0f36158348f422edb9e8713a8b48401cd35e7b6;hpb=6e4338bcec67484e23c96d0678fb815a3ca97506;p=umlisp.git diff --git a/sql.lisp b/sql.lisp index d0f3615..49ac053 100644 --- a/sql.lisp +++ b/sql.lisp @@ -7,7 +7,7 @@ ;;;; Author: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: sql.lisp,v 1.13 2003/07/22 01:54:39 kevin Exp $ +;;;; $Id$ ;;;; ;;;; This file, part of UMLisp, is ;;;; Copyright (c) 2000-2003 by Kevin M. Rosenberg, M.D. @@ -18,12 +18,24 @@ (in-package #:umlisp) -(defvar *umls-sql-db* "KUMLS2003AB") +(defvar +umls-sql-map+ + '((:2002AD . "KUMLS2002AD") (:2003AA . "KUMLS2003AA")) + (:2003AB . "KUMLS2003AB") (:2003AC . "KUMLS2003AC") + (:2004AA . "KUMLS2004AA")) +(defvar +default-umls-db+ :2003AC) + + +(defun lookup-db-name (db) + (cdr (assoc (ensure-keyword db) +umls-sql-map+))) + +(defvar *umls-sql-db* +default-umls-db+) (defun umls-sql-db () *umls-sql-db*) -(defun umls-sql-db! (dbname) - (sql-disconnect-pooled) - (setq *umls-sql-db* dbname)) + +(defun umls-sql-db! (db) + (setq *umls-sql-db* db)) + +(umls-sql-db! :2003AB) (defvar *umls-sql-user* "secret") (defun umls-sql-user () @@ -55,9 +67,9 @@ (defun sql-connect () "Connect to UMLS database, automatically used pooled connections" - (clsql:connect - `(,(umls-sql-host) ,(umls-sql-db) ,(umls-sql-user) ,(umls-sql-passwd)) - :database-type *umls-sql-type* :pool t)) + (clsql:connect (list *umls-sql-host* (lookup-db-name *umls-sql-db*) + *umls-sql-user* *umls-sql-passwd*) + :database-type *umls-sql-type* :pool t)) (defun sql-disconnect (conn) "Disconnect from UMLS database, but put connection back into pool"