X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=sql%2Foodml.lisp;h=e2a487e2412c773a1d7db76f9e4a41d2639a946e;hb=36509b8d390e94b2b0f8e681c09d5e89452978d8;hp=d76712c2d6e7726c65b91675fb5ab65fc29a71c9;hpb=2b89a1b56dfb8c1cdfaae36b2d4ff7382cff8b40;p=clsql.git diff --git a/sql/oodml.lisp b/sql/oodml.lisp index d76712c..e2a487e 100644 --- a/sql/oodml.lisp +++ b/sql/oodml.lisp @@ -211,9 +211,8 @@ (error "Unable to update records")))) (values)) -(defmethod update-records-from-instance ((obj standard-db-object) - &key (database *default-database*)) - (let ((database (or (view-database obj) database))) +(defmethod update-records-from-instance ((obj standard-db-object) &key database) + (let ((database (or database (view-database obj) *default-database*))) (labels ((slot-storedp (slot) (and (member (view-class-slot-db-kind slot) '(:base :key)) (slot-boundp obj (slot-definition-name slot)))) @@ -262,8 +261,9 @@ (sels (generate-selection-list view-class)) (res (apply #'select (append (mapcar #'cdr sels) (list :from view-table - :where view-qual) - (list :result-types nil))))) + :where view-qual + :result-types nil + :database vd))))) (when res (get-slot-values-from-view instance (mapcar #'car sels) (car res)))))