Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#15

Re: Mit Zeos auf MS-Access zugreifen

  Alt 8. Jun 2005, 08:22
1, Generell sollte man bei Verwendung von mehreren Datenbanken auf Felddefinition in der IDE verzichten, da auch Komponenten wie Zeos nicht 100% die Unterschiede bezüglich SQL-Auslegung verstecken können. Dies tritt vor allem dann zutage wenn nicht nur die Standard-Datentypen wie Integer oder String verwendet werden. Selbst Blob und Memo-Felder verhalten sich schon unterschiedlich.
Dein Problem wird sein das unter Firebird, MySQL ein TStringField angelegt wird und bei Access eine TWideStringField. Und dies ist jeweils korrekt da du bei Firebird und MySQL varchars und bei Access nvarchars verwendest.

2, Noch besser ist es mittels Bridge-Pattern die DB-Unterschiede in einer Unit/Klasse zu kapseln. Als gemeinsammkeit sollte dann maximal TDataset vorrausgesetzt werden. Noch besser wäre es ohne TDataset auszukommen und ähnlich wie bei ADO.NET eine disconnected Dataset zu definieren (Ist zwar aufwand, aber man ist dann komplett unabhängig von TDataset-Kompatiblen Komponenten.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat