logo       
Google Custom Search
    AddThis Social Bookmark Button

Wrong numeric conversion: msg#00033

Subject: Wrong numeric conversion
With CVS HEAD, numeric values are not read correctly.
The SQL_NUMERIC_STRUCT is filled with
.precision=3, .scale=5 for a number like 500.00123, which MSDASQL will interpret as .00123 (noticed when MSDASQL had to convert it to a string). Obviously the precision should be 8 or more.
The attached patch corrects this.

Regards,
Andreas
Index: convert.c
===================================================================
RCS file: /usr/local/cvsroot/psqlodbc/psqlodbc/convert.c,v
retrieving revision 1.121
diff -u -r1.121 convert.c
--- convert.c   30 Jul 2004 21:08:12 -0000      1.121
+++ convert.c   16 Jan 2005 15:19:32 -0000
@@ -1145,8 +1145,8 @@
                                        {
                                                if (dot_exist)
                                                        ns->scale++;
-                                               else
-                                                       ns->precision++;
+
+                                               ns->precision++;
                                                calv[nlen++] = *wv;
                                        }
                                }
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>