r9137: add defgenerics
[clsql.git] / base / db-interface.lisp
index 9a91a6902c2ebebe3357d9a102fa5ac7d551d637..2d52105bd2bb3dc478c1cc7b570c9499896ab625 100644 (file)
    "The internal generic implementation for checking if
 database type library loaded successfully."))
 
-(defgeneric database-type (database)
-  (:documentation
-   "Returns database type")
-  (:method (database)
-          (signal-no-database-error database)))
-
-
 (defgeneric database-initialize-database-type (database-type)
   (:documentation
    "The internal generic implementation of initialize-database-type."))
@@ -224,6 +217,13 @@ the given lisp type and parameters."))
           t)
   (:documentation "T [default] if database-type supports views."))
 
+(defgeneric db-type-default-case (db-type)
+  (:method (db-type)
+          (declare (ignore db-type))
+          ;; By default, CommonSQL converts identifiers to UPPER case. 
+          :upper)
+  (:documentation ":upper [default] if means identifiers mapped to UPPER case SQL like CommonSQL API. However, Postgresql maps identifiers to lower case, so PostgreSQL uses a value of :lower for this result."))
+
 (defgeneric db-type-has-fancy-math? (db-type)
   (:method (db-type)
           (declare (ignore db-type))