From: Kevin M. Rosenberg Date: Thu, 13 May 2004 18:01:13 +0000 (+0000) Subject: r9355: updates X-Git-Tag: v2006ac.2~99 X-Git-Url: http://git.kpe.io/?p=umlisp.git;a=commitdiff_plain;h=a30f0b727cf32ee36765fff89681c47d565b7911 r9355: updates --- diff --git a/create-sql.lisp b/create-sql.lisp index fd513c4..6e50a0f 100644 --- a/create-sql.lisp +++ b/create-sql.lisp @@ -196,24 +196,19 @@ (sql-create-indexes conn +custom-index-cols+) (sql-create-special-tables conn))) -(defun create-umls-db (&optional (extension ".trans")) +(defun create-umls-db (&key (extension ".trans") (skip-translation nil)) "SQL Databases: initializes entire database via SQL copy commands. This is much faster that using create-umls-db-insert." - (ignore-errors - (clsql:destroy-database (list *umls-sql-host* (lookup-db-name *umls-sql-db*) - *umls-sql-user* *umls-sql-passwd*) - :database-type *umls-sql-type*)) - (clsql:create-database (list *umls-sql-host* (lookup-db-name *umls-sql-db*) - *umls-sql-user* *umls-sql-passwd*) - :database-type *umls-sql-type*) (ensure-ucols+ufiles) (ensure-preparse) - (translate-all-files extension) + (unless skip-translation + (translate-all-files extension)) (let ((copy-cmd (ecase (umls-sql-type) (:mysql #'mysql-copy-cmd) (:postgresql #'pg-copy-cmd)))) (with-sql-connection (conn) + (clsql:truncate-database :database conn) (sql-drop-tables conn) (sql-create-tables conn) (dolist (file *umls-files*) @@ -269,11 +264,12 @@ This is much faster that using create-umls-db-insert." nil "COPY ~a FROM '~a' using delimiters '|' with null as ''" (table file) (umls-pathname (fil file) extension))) -(defun mysql-copy-cmd (file extension) +(defun mysql-copy-cmd (file extension &key local-file) "Return mysql copy statement for a file" (format nil - "LOAD DATA LOCAL INFILE \"~a\" INTO TABLE ~a FIELDS TERMINATED BY \"|\"" + "LOAD DATA ~AINFILE \"~a\" INTO TABLE ~a FIELDS TERMINATED BY \"|\"" + (if local-file "LOCAL " "") (umls-pathname (fil file) extension) (table file)))