Adding db-type-has-auto-increment
authorNathan Bird <nathan@acceleration.net>
Fri, 15 Jan 2010 15:37:35 +0000 (10:37 -0500)
committerNathan Bird <nathan@acceleration.net>
Mon, 18 Jan 2010 22:18:01 +0000 (17:18 -0500)
db-mysql/mysql-sql.lisp
sql/db-interface.lisp
sql/package.lisp

index 8f39471257c2a38ee6feaeea0faf371ecc48ca09..849fb39e724cdd76d3c82739facdc3b334c5b0f2 100644 (file)
   #+(or mysql-client-v4.1 mysql-client-v5) t
   #-(or mysql-client-v4.1 mysql-client-v5) nil)
 
+(defmethod db-type-has-auto-increment? ((db-type (eql :mysql)))
+  t)
+
 (when (clsql-sys:database-type-library-loaded :mysql)
   (clsql-sys:initialize-database-type :database-type :mysql))
index 031d1e8ae7fb7b8f632acd056b398bcd288550dd..ae586e8c2b8a95035a670a4a8c89253a62247a80 100644 (file)
@@ -374,6 +374,12 @@ of TYPE_NAME (keyword) PRECISION SCALE NULLABLE.")
            t)
   (:documentation "T [default] if database-type supports EXCEPT."))
 
+(defgeneric db-type-has-auto-increment? (db-type)
+  (:method (db-type)
+    (declare (ignore db-type)
+            nil))
+  (:documentation "NIL [default] if database-type supports auto-incrementing columns."))
+
 ;;; Large objects support (Marc Battyani)
 
 (defgeneric database-create-large-object (database)
index fbb67b42a6a1cc0f69a8bad9ea50b4eb16ca7bb0..fbf8257b0fae3bb9c9dca25c0b5deca3c188b0f8 100644 (file)
      #:db-type-use-fully-qualified-column-on-drop-index?
      #:db-type-has-intersect?
      #:db-type-has-except?
+     #:db-type-has-auto-increment?
      #:database-underlying-type
      #:database-get-type-specifier
      #:read-sql-value