From 3ac9e8d4881eebebe5cfbbf786d5268997046519 Mon Sep 17 00:00:00 2001 From: "Kevin M. Rosenberg" Date: Sun, 23 May 2004 05:44:21 +0000 Subject: [PATCH] r9443: * test/test-fdml.lisp: String table names are now case sensitive, so convert to default db case for FDML/SELECT/25 --- ChangeLog | 4 ++++ sql/package.lisp | 3 ++- sql/utils.lisp | 13 ++++++++++++- tests/test-fdml.lisp | 9 +++++---- 4 files changed, 23 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index abf4547..7cc79de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,10 @@ * sql/classes.lisp: honor case of string tables when outputting queries * sql/objects.lisp: Add database type to default database-get-type-specifier method * sql/sql.lisp: Add database type to default database-abort-transaction method + * sql/utils.lisp: Add GETENV function which will be used to get ORACLE_HOME + from environment + * test/test-fdml.lisp: String table names are now case sensitive, so convert to + default db case for FDML/SELECT/25 22 May 2004 Kevin Rosenberg * Version 2.10.20 released: Oracle backend now fails 6 out of 200 tests diff --git a/sql/package.lisp b/sql/package.lisp index 77100e5..20555d6 100644 --- a/sql/package.lisp +++ b/sql/package.lisp @@ -179,7 +179,8 @@ #:symbol-name-default-case #:convert-to-db-default-case #:ensure-keyword - + #:getenv + #:*loaded-database-types* #:reload-database-types #:*connect-if-exists* diff --git a/sql/utils.lisp b/sql/utils.lisp index 8763216..a23a820 100644 --- a/sql/utils.lisp +++ b/sql/utils.lisp @@ -315,6 +315,17 @@ list of characters and replacement strings." (incf dpos)))))) +(defun getenv (var) + "Return the value of the environment variable." + #+allegro (sys::getenv (string var)) + #+clisp (ext:getenv (string var)) + #+(or cmu scl) + (cdr (assoc (string var) ext:*environment-list* :test #'equalp + :key #'string)) + #+lispworks (lw:environment-variable (string var)) + #+mcl (ccl::getenv var) + #+sbcl (sb-ext:posix-getenv var)) + (eval-when (:compile-toplevel :load-toplevel :execute) (when (char= #\a (schar (symbol-name '#:a) 0)) (pushnew :clsql-lowercase-reader *features*))) @@ -334,7 +345,6 @@ list of characters and replacement strings." ;; Default CommonSQL behavior is to upcase strings (string-upcase str))) - (defun ensure-keyword (name) "Returns keyword for a name" (etypecase name @@ -344,3 +354,4 @@ list of characters and replacement strings." (eval-when (:compile-toplevel :load-toplevel :execute) (setq cl:*features* (delete :clsql-lowercase-reader cl:*features*))) + diff --git a/tests/test-fdml.lisp b/tests/test-fdml.lisp index 812894d..be35f5b 100644 --- a/tests/test-fdml.lisp +++ b/tests/test-fdml.lisp @@ -375,10 +375,11 @@ "Yuri")) (deftest :fdml/select/25 - (clsql:select [first-name] :from "employee" :flatp t :distinct t - :field-names nil - :result-types nil - :order-by [first-name]) + (clsql:select [first-name] :from (clsql-sys:convert-to-db-default-case "employee" *default-database*) + :flatp t :distinct t + :field-names nil + :result-types nil + :order-by [first-name]) ("Boris" "Josef" "Konstantin" "Leon" "Leonid" "Mikhail" "Nikita" "Vladamir" "Yuri")) -- 2.34.1