vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi, My developer environment: Informix Client 2.90 / Server 10.0 ADO 2.8 VB6 After I changed the Informix-Client and Informix-Server-Version (before 2.20 / 7.31 after 2.90 / 10.0) my routines for execute the stored procedures send Errors. Before it was possible to transfer the values without consideration of valuetype, the system was very type-tolerant. My Code: Public cmm As New Adodb.Command Public SP_Array() As Variant ReDim SP_Array(SP_Number) SP_Array(0) = 10 SP_Array(1) = "test" cmm.ActiveConnection = inf cmm.CommandText = SP_Name cmm.CommandType = adCmdStoredProc '---Input-Parameter For i% = 0 To cmm.Parameters.Count - 1 cmm.Parameters(i) = SP_Array(i) Next '---Execute Set RS = cmm.Execute But the newest version is very retrictiv and I allways get the ADO-errormessage: 3421 "Data type conversion error" at the row : cmm.Parameters(i) = SP_Array(i) My question is: Who knows a general solution for this problem? thanks |
| |||
| Michael Andreas wrote: <snip> > Informix Client 2.90 / Server 10.0 <snip> Which provider are you using ? e.g. OLEDB Have you checked the mappings ? http://publib.boulder.ibm.com/infoce...oledbmst41.htm Rich |
| |||
| Hi Rich, thanks for your email. Yes OLEDB I am not the database-administrator. I looked for the IBM-link but what shall I do that the program runs? thanks "Rich or Kristín" <informix.databases@geos.com> schrieb im Newsbeitrag news:1157549486.115675.16010@p79g2000cwp.googlegro ups.com... > > Michael Andreas wrote: > <snip> >> Informix Client 2.90 / Server 10.0 > <snip> > > Which provider are you using ? e.g. OLEDB > > Have you checked the mappings ? > > http://publib.boulder.ibm.com/infoce...oledbmst41.htm > > Rich > |
| ||||
| Michael Andreas wrote: > Hi Rich, > > thanks for your email. > > Yes OLEDB > > I am not the database-administrator. > I looked for the IBM-link but what shall I do > that the program runs? > > thanks <snip> Hi Michael, I've just read your other post, I don't think you'll be able to use the parameters.refresh method to auto-generate the ADO parameters. I've just tried it against a UDR with 3 integer input arguments and the resultant ADO parameters are of type adParamUnknown (not very promising!), - unsurprisingly I then get the same error as you "Parameter object is improperly defined...". I'm not sure which provider method ADO calls to get the info (GetColumnInfo on the IColumnsInfo interface???), the provider release notes indicate that it should be possible, but if common types like integers and varchars aren't mapped properly it doesn't look like you'll be able to use it. I have tried it with the ODBC driver and it looks like it would work. I would suggest a call to IBM support to confirm (or not!) the issue with OLEDB. If you must use OLEDB then you will have to find another way to define your ADO parameters, e.g. hard-coded to match the UDR, or perhaps you can query some of the system tables up front to pull out the arguments and do the data type mappings yourself ? Regards, Rich |