Tipi
Aug 4th, 2000, 09:11 AM
Hi there,
I am experiencing a problem with RDO when the decimal separator in my control panel is a comma. In fact, when I try to retrieve a decimal value from an Oracle database, I get a run-time error 9 (Type Mismatch). The error does not seem to come from my code since I tried to store the value in variables of type Double, String, Variant and Integer and still have the same error. I have also tried using the following ODBC drivers without success:
Oracle 8.00.05.00
Oracle 8.01.55.00
Oracle 8.01.61.00
Microsoft 2.573.4403 (for Oracle, of course!)
I am using WinNT 4 at SP5 and VB6 at SP3. It works well when I use the Oracle 73 Driver version 2.05.03.01 but since it is an Oracle 7 driver, I wish there is another solution.
On Oracle’s site I have read that if I changed my NLS_NUMERIC_CHARACTERS parameter to reflect the control panel, driver 8.01.61.00 would work but I have not been able to make it work except by changing my NLS_LANG parameter to 'FRENCH_CANADA'.
Do you know if there is any other driver that does not have the problem?
Is there anything I can do to make it work?
Thanks in advance!
Tipi
Here is the code:
[code]
Private Sub Main()
Dim s As String, i As Integer, d As Double, v As Variant
Dim cnt As rdoConnection
Dim rst As rdoResultset
With rdoEnvironments(0)
.CursorDriver = rdUseOdbc
'none of them works
Set cnt = .OpenConnection("MSORACLE")
'Set cnt = .OpenConnection("ORA805")
'Set cnt = .OpenConnection("ORA8016100")
'Set cnt = .OpenConnection("ORA8015500")
End With
Set rst = cnt.OpenResultset("select * from ztomnum72", Type:=rdOpenForwardOnly)
'all of these calls result in a run-time 9…
s = rst.rdoColumns(0).Value
i = rst.rdoColumns(0).Value
d = rst.rdoColumns(0).Value
v = rst.rdoColumns(0).Value
MsgBox rst.rdoColumns(0).Value
End Sub
I am experiencing a problem with RDO when the decimal separator in my control panel is a comma. In fact, when I try to retrieve a decimal value from an Oracle database, I get a run-time error 9 (Type Mismatch). The error does not seem to come from my code since I tried to store the value in variables of type Double, String, Variant and Integer and still have the same error. I have also tried using the following ODBC drivers without success:
Oracle 8.00.05.00
Oracle 8.01.55.00
Oracle 8.01.61.00
Microsoft 2.573.4403 (for Oracle, of course!)
I am using WinNT 4 at SP5 and VB6 at SP3. It works well when I use the Oracle 73 Driver version 2.05.03.01 but since it is an Oracle 7 driver, I wish there is another solution.
On Oracle’s site I have read that if I changed my NLS_NUMERIC_CHARACTERS parameter to reflect the control panel, driver 8.01.61.00 would work but I have not been able to make it work except by changing my NLS_LANG parameter to 'FRENCH_CANADA'.
Do you know if there is any other driver that does not have the problem?
Is there anything I can do to make it work?
Thanks in advance!
Tipi
Here is the code:
[code]
Private Sub Main()
Dim s As String, i As Integer, d As Double, v As Variant
Dim cnt As rdoConnection
Dim rst As rdoResultset
With rdoEnvironments(0)
.CursorDriver = rdUseOdbc
'none of them works
Set cnt = .OpenConnection("MSORACLE")
'Set cnt = .OpenConnection("ORA805")
'Set cnt = .OpenConnection("ORA8016100")
'Set cnt = .OpenConnection("ORA8015500")
End With
Set rst = cnt.OpenResultset("select * from ztomnum72", Type:=rdOpenForwardOnly)
'all of these calls result in a run-time 9…
s = rst.rdoColumns(0).Value
i = rst.rdoColumns(0).Value
d = rst.rdoColumns(0).Value
v = rst.rdoColumns(0).Value
MsgBox rst.rdoColumns(0).Value
End Sub