Delphi multi-RDBMS support with Oracle/Interbase
Posted on 2000-03-14
I have a problem with adding support for Oracle as a back-end to an application that already supports InterBase/MSSQL and SyBase.
I have some TTables/TQuery's with predefined fields (means they are created in the IDE). There FieldType and Size are determined by the IDE (and BDE).
The problem is that Oracle does not know the INTEGER type but uses NUMERIC(0,*) for this. Delphi (and BDE) interpret this as a TFloatField. Because the application is developed with Interbase as a base database, the predefined field are of type integer. And opening a Query that has a TIntegerField when a TFloatField is expected generates a exception...
Does anybody have experience in solving this issue.
(An obvious solution which I am NOT looking for is fixing this at Form or DataModule creation time by storing/freeing/recreating the fielddefs and restoring every interesting property on recreation).