sybase1234
Programmer
Hi,
We have a VB5 application that runs on Sybase 11.9.2. Now we are migrating to Sybase 12.5. When the application tries to call certain stored procedures that has a NUMERIC paramete, it gives the following error.
"[INTERSOLV][ODBC SQL Server driver][SQL Server]Implicit conversion from datatype 'INT' to 'VARCHAR' is not allowed. Use the CONVERT function to run this query."
The same application and the same SP runs fine when it is connected to Sybase 11.9.2.
The SP as such runs fine if I run directly from Sybase 12.5 client. The problem is only when it is called from VB front end.
If I change the SP Input parameter type as INTEGER, then it works perfectly. If the input data type is NUMERIC, the RDO interprets it as "rdTypeCHAR" type. I found this when I debugged the application. If I change it to INT in SP, then the RDO interprets it as "rdTypeINTEGER"
Really not sure what causes this problem. The temporary solution is changing the NUMERIC parameter to INT. But there is a problem again. INT data type has its own limitation. It can hold data only from (-2,147,483,648 to
2,147,483,647). That's 32 bit.
I have some SP parameters NUMERIC(20,8). I can not change this to INT datatype.
I believe this is something related to Intersolv ODBC driver.
If any one has experienced this kind of problem, please help me how to fix this.
Thanks in advance.
- Suresh
We have a VB5 application that runs on Sybase 11.9.2. Now we are migrating to Sybase 12.5. When the application tries to call certain stored procedures that has a NUMERIC paramete, it gives the following error.
"[INTERSOLV][ODBC SQL Server driver][SQL Server]Implicit conversion from datatype 'INT' to 'VARCHAR' is not allowed. Use the CONVERT function to run this query."
The same application and the same SP runs fine when it is connected to Sybase 11.9.2.
The SP as such runs fine if I run directly from Sybase 12.5 client. The problem is only when it is called from VB front end.
If I change the SP Input parameter type as INTEGER, then it works perfectly. If the input data type is NUMERIC, the RDO interprets it as "rdTypeCHAR" type. I found this when I debugged the application. If I change it to INT in SP, then the RDO interprets it as "rdTypeINTEGER"
Really not sure what causes this problem. The temporary solution is changing the NUMERIC parameter to INT. But there is a problem again. INT data type has its own limitation. It can hold data only from (-2,147,483,648 to
2,147,483,647). That's 32 bit.
I have some SP parameters NUMERIC(20,8). I can not change this to INT datatype.
I believe this is something related to Intersolv ODBC driver.
If any one has experienced this kind of problem, please help me how to fix this.
Thanks in advance.
- Suresh