X-Git-Url: http://git.kpe.io/?p=umlisp.git;a=blobdiff_plain;f=sql.lisp;h=82af22b282da669dd8a92b4e233060ace99d01b9;hp=d2900d6d2a8bb40231d52cac24d6cc18b08e3c19;hb=c01a3503e58ba9d4e7fadb42f3f0f69c38496e10;hpb=9b9c48233072a8f64c9677d9b92b5eb956f4079d diff --git a/sql.lisp b/sql.lisp index d2900d6..82af22b 100644 --- a/sql.lisp +++ b/sql.lisp @@ -20,8 +20,9 @@ (defvar +umls-sql-map+ '((:2004aa . "KUMLS2004AA") - (:2006ac . "KUMLS2006AC"))) -(defvar +default-umls-db+ :2006ac) + (:2006ac . "KUMLS2006AC") + (:2006ad . "MTS2006AD"))) +(defvar +default-umls-db+ "MTS2006AD") (defun lookup-db-name (db) @@ -32,7 +33,11 @@ *umls-sql-db*) (defun umls-sql-db! (db) - (setq *umls-sql-db* db)) + (etypecase db + (string + (setq *umls-sql-db* db)) + (keyword + (setq *umls-sql-db* (lookup-db-name db))))) (defvar *umls-sql-user* "secret") (defun umls-sql-user () @@ -62,10 +67,13 @@ (sql-disconnect-pooled) (setq *umls-sql-type* h)) +(defun umls-connection-spec () + (list *umls-sql-host* *umls-sql-db* + *umls-sql-user* *umls-sql-passwd*)) + (defun sql-connect () "Connect to UMLS database, automatically used pooled connections" - (clsql:connect (list *umls-sql-host* (lookup-db-name *umls-sql-db*) - *umls-sql-user* *umls-sql-passwd*) + (clsql:connect (umls-connection-spec) :database-type *umls-sql-type* :pool t)) (defun sql-disconnect (conn)