X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=sql.lisp;h=32cc98d55c5c2bbdec776000392fb1962ba9d063;hb=75862479bf0f237767673e4df2d9dc2cb45ccbee;hp=207d68c6fa86ef933298fc2576ce6b35e26fb698;hpb=8dc001f5e7cf851c06006e489473a85611d348be;p=umlisp.git diff --git a/sql.lisp b/sql.lisp index 207d68c..32cc98d 100644 --- a/sql.lisp +++ b/sql.lisp @@ -8,7 +8,7 @@ ;;;; Created: Apr 2000 ;;;; ;;;; This file, part of UMLisp, is -;;;; Copyright (c) 2000-2010 by Kevin M. Rosenberg, M.D. +;;;; Copyright (c) 2000-2012 by Kevin M. Rosenberg, M.D. ;;;; ;;;; UMLisp users are granted the rights to distribute and use this software ;;;; as governed by the terms of the GNU General Public License. @@ -16,12 +16,15 @@ (in-package #:umlisp) -(defvar +umls-sql-map+ +(defparameter +umls-sql-map+ '((:2004aa . "KUMLS2004AA") (:2006ac . "KUMLS2006AC") (:2006ad . "MTS2006AD") - (:2009ab . "MTS2009AB"))) -(defvar +default-umls-db+ "MTS2009AB") + (:2009ab . "MTS2009AB") + (:2010aa . "MTS2010AA_ALL") + (:2011aa . "UMLS2011AA") + (:2012aa . "MTS2012AA_ALL"))) +(defvar +default-umls-db+ "MTS2012AA_ALL") (defun lookup-db-name (db) (cdr (assoc (ensure-keyword db) +umls-sql-map+))) @@ -30,7 +33,7 @@ (defun umls-sql-db () *umls-sql-db*) -(defun umls-sql-db! (db) +(defun set-umls-sql-db (db) (etypecase db (string (setq *umls-sql-db* db)) @@ -40,28 +43,28 @@ (defvar *umls-sql-user* "secret") (defun umls-sql-user () *umls-sql-user*) -(defun umls-sql-user! (u) +(defun set-umls-sql-user (u) (sql-disconnect-pooled) (setq *umls-sql-user* u)) (defvar *umls-sql-passwd* "secret") (defun umls-sql-passwd () *umls-sql-passwd*) -(defun umls-sql-passwd! (p) +(defun set-umls-sql-passwd (p) (sql-disconnect-pooled) (setq *umls-sql-passwd* p)) (defvar *umls-sql-host* "localhost") (defun umls-sql-host () *umls-sql-host*) -(defun umls-sql-host! (h) +(defun set-umls-sql-host (h) (sql-disconnect-pooled) (setq *umls-sql-host* h)) (defvar *umls-sql-type* :mysql) (defun umls-sql-type () *umls-sql-type*) -(defun umls-sql-type! (h) +(defun set-umls-sql-type (h) (sql-disconnect-pooled) (setq *umls-sql-type* h)) @@ -75,8 +78,11 @@ (defun sql-connect () "Connect to UMLS database, automatically used pooled connections" - (clsql:connect (umls-connection-spec) - :database-type *umls-sql-type* :pool t)) + (let ((db (clsql:connect (umls-connection-spec) + :database-type *umls-sql-type* + :encoding :utf-8 + :pool t))) + db)) (defun sql-disconnect (conn) "Disconnect from UMLS database, but put connection back into pool"