X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=sql%2Foodml.lisp;h=4644bf1c1589fdb351bb5ea1833f688d68c7daa1;hb=9172cacc5ce2c8e36bf81ca0cede1179820edf8e;hp=b1a5d6adc117ef8481b06a697d6dd8ee4fb89cbe;hpb=961735a91f4baf6acfb1eef0590087a070997296;p=clsql.git diff --git a/sql/oodml.lisp b/sql/oodml.lisp index b1a5d6a..4644bf1 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)))) @@ -643,7 +642,8 @@ :attribute (gethash :home-key tdbi) :table jc-view-table)) :where jq - :result-types :auto))) + :result-types :auto + :database (view-database object)))) (mapcar #'(lambda (i) (let* ((instance (car i)) (jcc (make-instance jc :view-database (view-database instance)))) @@ -668,7 +668,8 @@ (list instance jcc))) (select (sql-expression :attribute (gethash :foreign-key tdbi) :table jc-view-table) :from (sql-expression :table jc-view-table) - :where jq))))))) + :where jq + :database (view-database object)))))))) ;;; Remote Joins