Zum aktuellen Stand der Dinge: Es sind irgendwie alle Schuld
- AutoInc
Ich habe mittels "Suchen/Ersetzen" in allen
PAS und
DFM alle Vorkommen von TAutoInc gegen TVariant bzw TInteger bzw TFloat ausgetauscht, damit ist dieses Problem behoben (TVariant bietet sich an, damit es mit
SQL-Server weiter läuft).
- Boolean
Der Oracle Migrationsassistent setzt für Bool'sche Werte einfach NUMBER(1) ein, was Delphi bzw
Access nicht korrekt erkennt. Wird der Datentyp gegen CHAR(1) getauscht, funktioniert es. Ich wechsele nun den Migrationsassistent. Falls jemand einen guten (für Geld) kennt ... Alternativ wäre auch interessant ob man Delphi "sagen" kann, dass es NUMBER=0 als False bzw NUMBER=1 als True erkennt. Ich habe keinen Weg gefunden. Ev
DB.PAS modifizieren? Ich brauche Bool'sche Werte, damit ich mit ".AsBoolean" arbeiten kann.
- Integer
Delphi 7 erkennt Integer, nur Delphi 5 erkennt Float. Warum? Ich denke mal, hier müssen Änderungen in der
DB.PAS vorgenommen werden. Falls jemand eine Idee hat ...
[quote="shmia"]Dein Problem sind offensichtlich die
persistenten Felder!!
Leider gibt es normalerweise nur die Möglichkeit (pro Tabelle/
Query) auf die persistenten Felder ganz zu verzichten
oder nur mit den persistenten Feldern zu arbeiten.
Ohne persistente Felder hättest du jetzt kein Problem mit Oracle.[/delphi]
Jein. Im Prinzip gebe ich Dir Recht, allerdings würde ich dann über andere Probleme wie Boolean stolpern. Es sind einige Probleme ...
[quote="shmia"]Leider wurde dies von Borland so nicht designed, aber man kann sich behelfen, wenn man im Event AfterOpen eingreift[/delphi]
Stimmt, leider ist Delphi hier wenig flexibel. Brachial mit "Kann damit nicht umgehen" statt ein Ereignis auszulösen damit die Anwendung die Chance hat, den neuen Datentypen zu definieren, ist wirklich unschön.