freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
- From: "P. Sankar" <SankarP AT catsglobal.co.in>
- To: freetds AT lists.ibiblio.org
- Subject: [freetds] datatype conversion
- Date: Tue, 18 Nov 2003 18:55:20 +0530
Hi,
I am introducing myself as software engineer and working on
data warehousing tool.
I have few doubts in datatype conversion using the DB library API
function dbconvert(). I have tried the following numbers to insert
into SQL Server database after conversion.
123456789123456.8800
123456789123456.9900
123456789123456.9800
First, I converted the money datatype to decimal. Again I converted
from decimal into character.
The pSrc is the
char *pSrc;
dbconvert(dbproc, SYBMONEY, pSrc, sizeof(DBMONEY), SYBDECIMAL, (unsigned
char *)&decTemp, sizeof(DBDECIMAL));
dbconvert(dbproc, SYBDECIMAL, (unsigned char *const)&decTemp,
sizeof(DBDECIMAL), SYBCHAR, tmpstr, -1);
After conversion, the above values loses its scale value by 1. Before the
first conversion, I have
set the precision and scale value length to 38 and 5.
For example, after conversion I am getting the result as follows.
123456789123456.8700
123456789123456.9800
123456789123456.9700
But, I have tried the same conversion using the following query in SQL
Server Query Analyzer.
SELECT CONVERT(decimal(38,4) , 123456789123456.8800)
I am getting the correct answer for the above query. Also, I have converted
the converted value
to character.
SELECT CONVERT(CHAR(50),CONVERT(decimal(38,4) , 123456789123456.8800))
In this case, there is no loss in scale value.
Could you please suggest the solution for this problem.
Rgds,
Sankar.P.
-
[freetds] datatype conversion,
P. Sankar, 11/18/2003
- <Possible follow-up(s)>
- RE: [freetds] datatype conversion, ZIGLIO Frediano, 11/18/2003
- RE: [freetds] datatype conversion, Lowden, James K, 11/18/2003
- [freetds] Datatype conversion, P. Sankar, 11/19/2003
Archive powered by MHonArc 2.6.24.