To: <davidb158@xxxxxxxxxxx>, <oracle-l@xxxxxxxxxxxxx>
Date: Tue, 3 Jul 2007 14:42:23 -0400
Two possibilities come to mind that do not involve more restrictions in 10g:
1) a particular test1 is now being converted that is in fact not a
valid number when the implicit conversion is used that was formerly not
examined in the order of solution of the 9i plan while a new plan in 10g
checks the value.
2) your data has changed such that a non-numeric value newly exists in
some tuple in column test1.
Regards,
mwf
_____
From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx]
On Behalf Of David Boyd
Sent: Tuesday, July 03, 2007 1:43 PM
To: oracle-l@xxxxxxxxxxxxx
Subject: data type conversion in 10g
We have Oracle 10.2.0.3. There is one field, test1 that is definite as
char(2). When we use 'where test1<88', it works fine in 9i, but we get
'ORA-01722 invalid number' error in 10g. Once I add single quotes around
88, the error is gone. I know the best practice is not to use implicit
conversion. Just wonder why it works in 9i, but not in 10g, more
restriction in 10g or if there is any change in 10g that causes the error
tracked?
_____
See what you're getting into.before you go there. Check it out!
<http://newlivehotmail.com>