r11094: 03 Sep 2006 Kevin Rosenberg <kevin@rosenberg.net>
[clsql.git] / sql / db-interface.lisp
index 0d67bb0147a25e7a85e581bedbbab6f620cfcee3..10b25d93defb0bbd1c1325561669b4c271c723b8 100644 (file)
@@ -296,6 +296,12 @@ of TYPE_NAME (keyword) PRECISION SCALE NULLABLE.")
           nil)
   (:documentation "NIL [default] if database-type does not use column name on DROP INDEX."))
 
+(defgeneric db-type-use-fully-qualified-column-on-drop-index? (db-type)
+  (:method (db-type)
+          (declare (ignore db-type))
+          nil)
+  (:documentation "NIL [default] if database-type does not require fully qualified column name on DROP INDEX."))
+
 (defgeneric db-type-has-views? (db-type)
   (:method (db-type)
           (declare (ignore db-type))
@@ -359,6 +365,17 @@ of TYPE_NAME (keyword) PRECISION SCALE NULLABLE.")
     nil)
   (:documentation "T if database backend supports prepared statements."))
 
+(defgeneric db-type-has-intersect? (db-type)
+  (:method (db-type)
+          (declare (ignore db-type))
+          t)
+  (:documentation "T [default] if database-type supports INTERSECT."))
+
+(defgeneric db-type-has-except? (db-type)
+  (:method (db-type)
+          (declare (ignore db-type))
+          t)
+  (:documentation "T [default] if database-type supports EXCEPT."))
 
 ;;; Large objects support (Marc Battyani)
 
@@ -459,4 +476,4 @@ for foreign libraries \(in addition to the default places).")
 (defun push-library-path (path)
   "Adds the pathspec PATH \(which should denote a directory) to
 the list *FOREIGN-LIBRARY-SEARCH-PATHS*."
-  (push path *foreign-library-search-paths*))
\ No newline at end of file
+  (pushnew path *foreign-library-search-paths* :test #'equal))