r9214: Fix ATTRIBUTE-TYPE so that
[clsql.git] / db-odbc / odbc-sql.lisp
index 2769bf91b3c6b6881b6bf4bc77d16feb6b8b68fd..70e14787c387bc09e0842371b420dc35dd73cf4e 100644 (file)
     ;; NULLABLE is the eleventh column
     (loop for row in rows
        when (string-equal attribute (fourth row))
-       do (return (values (ensure-keyword (sixth row))
-                          (parse-integer (seventh row) :junk-allowed t)
-                          (parse-integer (ninth row) :junk-allowed t)
-                          (parse-integer (nth 10 row) :junk-allowed t))))))
+       do
+       (let ((size (seventh row))
+             (precision (ninth row))
+             (scale (nth 10 row)))
+         (return (values (ensure-keyword (sixth row))
+                         (when size (parse-integer size))
+                         (when precision (parse-integer precision))
+                         (when scale (parse-integer scale))))))))
 
 (defmethod database-set-sequence-position (sequence-name
                                            (position integer)