X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;ds=sidebyside;f=sql%2Fobjects.lisp;fp=sql%2Fobjects.lisp;h=07652f21c7f77d7712b35ddde07da23a5c945997;hb=12ad0234eb45fd831c5c905b8428868731ba3c54;hp=5e36e758bf9ed8b33c93f9280465fa0e0a928d67;hpb=a45efdc4b94ed2ce0d70c8bd1f4c0b0b71a827db;p=clsql.git diff --git a/sql/objects.lisp b/sql/objects.lisp index 5e36e75..07652f2 100644 --- a/sql/objects.lisp +++ b/sql/objects.lisp @@ -690,7 +690,11 @@ superclass of the newly-defined View Class." (defmethod read-sql-value (val (type (eql 'float)) database) (declare (ignore database)) ;; writing 1.0 writes 1, so we we *really* want a float, must do (float ...) - (float (read-from-string val))) + (etypecase val + (string + (float (read-from-string val))) + (float + val))) (defmethod read-sql-value (val (type (eql 'boolean)) database) (case (database-underlying-type database) @@ -1124,6 +1128,9 @@ ENABLE-SQL-READER-SYNTAX." target-args)))) (multiple-value-bind (target-args qualifier-args) (query-get-selections select-all-args) + (unless (or *default-database* (getf qualifier-args :database)) + (signal-no-database-error nil)) + (cond ((select-objects target-args) (let ((caching (getf qualifier-args :caching t))