Till now for my applications I Worked with a Oracle DB - Version 9i and earlier -
Now I'm trying to improve my application with Oracle 10g, but I found this error on my queries with preloaded fields :
Project "Myproject" raised exception class EDatabaseError with message 'MyTable": Type mismatch for field 'Field1', expecting: Float actual: Integer'
To solve the problem I tried to reload fields on a session with Oracle 10g (designtime); so the original type of my field, TFloatField, changed in TIntegerField, even if types on the db 9i and 10g are the same.
After this, my application works on the Oracle 10g Db, but not with 9i (I have now the opposite problem!)
I need my application works with both Oracle versions, without reloading fields every time at runtime ( I need preloaded field for my application original structure ).
So Why Odac TOraQuery ot TOraTable object change the field type when reload the field in fields editor??
Is There any solution for my problem that doesn't need to change the application structure ??
I need HELP !! This is Very important !!
Thanks !
Thanks
Incompatible fields type between Oracle 9i and Oracle 10G
-
- Posts: 4
- Joined: Wed 09 Feb 2005 10:31
Sorry, but we couldn't reproduce your problem. Pls. send us small demo project that demonstrates your problem and include scripts to create server objects to ODAC support address.
p.s. You can try to change TOraSession.Options.EnableIntegers value to False, that mean that you do not use integer fields at all, maybe this helps in your case.
p.s. You can try to change TOraSession.Options.EnableIntegers value to False, that mean that you do not use integer fields at all, maybe this helps in your case.
Could it be that you use a union for the source of the query?
We had the same problem with field types integer and float on two different patch levels of 9i.
Early patch levels of 9i seem to change NUMBER(n) field types to NUMBER, thus resulting in a possible change from integer to float.
Patch level with the error: 9.2.0.4
Patch level without the error: 9.2.0.6
We had the same problem with field types integer and float on two different patch levels of 9i.
Early patch levels of 9i seem to change NUMBER(n) field types to NUMBER, thus resulting in a possible change from integer to float.
Patch level with the error: 9.2.0.4
Patch level without the error: 9.2.0.6
If you use Unions pls. see http://crlab.com/forums/viewtopic.php?p=1294#1294