-(defun custom-col-values (colstructs values delim doquote)
- "Returns string of column values for SQL inserts for custom columns"
+(defun insert-col-value (col value)
+ (if (null (umls-col-parsefunc col))
+ value
+ (format nil "~A" (funcall (umls-col-parsefunc col) value))))
+
+(defun insert-values-cmd (file values)
+ "Return sql insert command for a row of values"
+ (let ((insert-func
+ (lambda (col value)
+ (let ((q (umls-col-quotechar col)))
+ (concatenate 'string q (insert-col-value col value) q)))))
+ (format
+ nil "INSERT INTO ~a (~{~a~^,~}) VALUES (~{~a~^,~})"
+ (umls-file-table file)
+ (umls-file-fields file)
+ (append
+ (mapcar insert-func (remove-custom-cols (umls-file-colstructs file)) values)
+ (custom-col-values (custom-colstructs-for-file file) values t)))))
+
+(defun custom-col-values-old (colstructs values delim doquote)
+ "Returns a string of column values for SQL inserts for custom columns"