+ (declare (ignore col-names))
+ ;; COLUMN_NAME is hard-coded by odbc spec as fourth position
+ ;; TYPE_NAME is the sixth column
+ ;; PRECISION/COLUMN_SIZE is the seventh column
+ ;; SCALE/DECIMAL_DIGITS is the ninth column
+ ;; NULLABLE is the eleventh column
+ (loop for row in rows
+ when (string-equal attribute (fourth row))
+ 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))))))))