anchor.diff:                                 :if-exists if-exists
                                  :on (detect-and-convert on))))
   
  +(defmethod make-statement ((statement-name (eql :pragma)) &rest args)
  +  (apply #'make-pragma-statement args))
  +
   (defmethod yield ((statement create-table-statement))
     (with-yield-binds
       (format nil "~A~:[~; IF NOT EXISTS~] ~A (~%~{    ~A~^,~%~}~%)"
  
positive.code:   (if-exists nil :type boolean)
    (on nil :type (or null sql-symbol)))
  
  (defun find-make-statement (statement-name &optional (package *package*))
    (find-constructor statement-name #.(string :-statement)
                      :package package))
  
negative.code:            (and (drop-index-statement-on statement)
                  (yield (drop-index-statement-on statement))))
     nil))
  
  (defmethod yield ((statement pragma-statement))
    (values
     (format nil "PRAGMA ~A ~@[ = ~A~]"
             (pragma-statement-pragma-name statement)
             (pragma-statement-value statement))
     nil))
  
  