From: nathan@acceleration.net Date: Thu, 10 Apr 2008 15:25:12 +0000 (-0400) Subject: In ODBC when reading data in chunks with a specified out-length, use that as X-Git-Url: http://git.kpe.io/?p=clsql.git;a=commitdiff_plain;h=31499d71a3f3dd75dfdc7f1012603d0c680ed65a In ODBC when reading data in chunks with a specified out-length, use that as an indicator since freetds doens't set the info status appropriately. --- diff --git a/db-odbc/odbc-api.lisp b/db-odbc/odbc-api.lisp index dfdbe21..aefd838 100644 --- a/db-odbc/odbc-api.lisp +++ b/db-odbc/odbc-api.lisp @@ -912,10 +912,7 @@ as possible second argument) to the desired representation of date/time/timestam (error 'clsql:sql-database-error :message "wrong type. preliminary.")) while (and (= res $SQL_SUCCESS_WITH_INFO) - #+ingore(eq (sql-state +null-handle-ptr+ +null-handle-ptr+ hstmt) - $sql-data-truncated) - (equal (sql-state +null-handle-ptr+ +null-handle-ptr+ hstmt) - "01004")) + (> out-len +max-precision+)) do (setf res (%sql-get-data hstmt column-nr c-type data-ptr +max-precision+ out-len-ptr) out-len (deref-pointer out-len-ptr #.$ODBC-LONG-TYPE)))