dbExpress Framework-Kompatibilität

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Datenbankanwendungen für die Win32-Plattform entwickeln - Index

Teile der dbExpress-Software, die vor dem Erscheinen des dbExpress-Treiber-Framework (DBX-Treiber-Framework) entwickelt wurden, mussten für die Zusammenarbeit mit dem DBX-Treiber-Framework verändert werden. Dies hat zu einigen Kompatibilitätsproblemen geführt.

Allgemein

dbExpress 2.5-Treiber können nicht mit dem DBX-Framework verwendet werden.

Das dbExpress-Framework bietet keine 100% Kompatibilität mit dbExpress 3.

dbExpress 3-Treiber können mit dem DBX-Framework verwendet werden. Der Treiberlademechanismus des DBX-Framework erkennt dbExpress 3-Treiber automatisch und passt mithilfe des DBXAdapter-Treibers (dbxadapter30.dll) einen dbExpress 3-Treiber an einen dbExpress 4-Treiber an.

Im Folgenden finden Sie eine Liste der bekannten Kompatibilitätsprobleme:

  • Statische Treiberbindung. dbExpress-Treiber können nicht statisch in eine ausführbare Datei gelinkt werden.
  • SqlExpr.TSQLConnection stellte eine geschützten Zugriff auf das Connection-Member bereit, das nur in der nativen Version von SqlExpr.pas den Typ TISQLConnection hatte. Diese wurde in der verwalteten Version wegen der Komplexität weggelassen, mit der PInvoke in der verwalteten Version der dbExpress VCL verwendet wurde. SqlExpr.TSQLConnection stellt nun stattdessen einen geschützten Zugriff auf Data.DBXCommon.TDBXConnection bereit. Auf diese geschützte Verbindung können native und verwaltete Anwendungen zugreifen.
  • Das Ereignis für die Ablaufüberwachung ist leicht verändert, weil es auf dem DBX-Treiber-Framework basiert.
  • Der DBXAdapter-Treiber kann dbExpress 3-Treiber an dbExpress 4 anpassen, aber keine dbExpress 2.5-Treiber.

VCL-Probleme

Die meisten Anwendungen, die dbExpress VCL-Komponenten verwenden, können mit dieser Modifikation arbeiten. Es gibt jedoch einige lokalisierte Änderungen an VCL-Komponenten, weil die VCL jetzt mit dem mehr objektorientierten DBX-Treiber-Framework anstatt mit dem C-ähnlichen COM-basierten dbExpress 3-Treiber-Interface interagiert.

Außerdem wurde die API für zwei VCL-Komponenten leicht verändert: Data.SqlExpr.TSQLConnection und Data.SqlExpr.TSQLDataSet. Es wurden auch einige Datenstrukturen verändert. In Folgenden finden Sie eine Zusammenfassung der API-Änderungen.

Anmerkung:  Wegen der API-Änderungen müssen Sie die mit dem Produkt ausgelieferte Unit SqlExpr.pas neu compilieren. Die Unit DBXpress wird nicht mehr verwendet.

Siehe auch