;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: sql-create.lisp,v 1.14 2003/05/06 05:11:55 kevin Exp $
+;;;; $Id: sql-create.lisp,v 1.15 2003/05/06 05:35:48 kevin Exp $
;;;;
;;;; This file, part of UMLisp, is
;;;; Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
(custom-col-values (custom-colstructs-for-file file) values t)))))
-(defun custom-col-value (col doquote values)
+(defun custom-col-value (col values doquote)
(let ((custom-value (funcall (umls-col-custom-value-func col) values)))
- (if doquote
- (let ((q (umls-col-quotechar col)))
- (concatenate 'string q (escape-backslashes custom-value) q))
- (escape-backslashes custom-value))))
+ (if custom-value
+ (if doquote
+ (let ((q (umls-col-quotechar col)))
+ (concatenate 'string q (escape-backslashes custom-value) q))
+ (escape-backslashes custom-value))
+ "")))
(defun custom-col-values (colstructs values doquote)
"Returns a list of string column values for SQL inserts for custom columns"
- (loop for col in colstructs collect (custom-col-value col doquote values)))
-
+ (loop for col in colstructs collect (custom-col-value col values doquote)))
(defun remove-custom-cols (cols)
"Remove custom cols from a list col umls-cols"
(umls-pathname (umls-file-fil file) extension) (umls-file-table file)))
(defun col-value (col value)
- (if (eq (umls-col-datatype col) 'sql-u)
- (write-to-string (parse-ui value ""))
- (escape-backslashes value)))
+ (if value
+ (if (eq (umls-col-datatype col) 'sql-u)
+ (write-to-string (parse-ui value ""))
+ (escape-backslashes value))
+ ""))
(defun umls-translate (file line strm)
"Translate a single line for sql output"