expertenaustausch > comp.lang.* > comp.lang.delphi.misc

Jakob Achterndiek (21.11.2018, 14:10)
Hallo,

um ein vor Jahren mit Delphi 5 prof geschriebenes Programm,
das umfangreiche MS-Access- und mySQL-Datenbanken verwaltet,
auf Delphi 10.2 umzusetzuen, suche ich einen Satz mit Routinen
(Database, Table usw.) zur Verbindung mit MS Access. Damals
gab es Diamond Access von Timur Islamov; aber das ist offenbar
nicht mehr verfügbar.

Mit den FireDAC-Routinen komme ich nicht zurecht. Vielleicht
weiß ja einer von Euch eine verständliche Einführung, mit der
einem alt gewordenen Delphianer wie mir zu helfen wäre?

Gruß
j/\a
Matthias Eißing (21.11.2018, 17:17)
Am 21.11.18 um 13:10 schrieb Jakob Achterndiek:

> Mit den FireDAC-Routinen komme ich nicht zurecht. Vielleicht
> weiß ja einer von Euch eine verständliche Einführung, mit der
> einem alt gewordenen Delphianer wie mir zu helfen wäre?


Wo klemmt es denn mit FireDAC und MS Access? Welche Access-Datenbankversion?

Alternative: dbGo/ADO
Jakob Achterndiek (21.11.2018, 20:37)
Am 21.11.2018 um 16:17 schrieb Matthias Eißing:
> Am 21.11.18 um 13:10 schrieb Jakob Achterndiek:
>> Mit den FireDAC-Routinen komme ich nicht zurecht. Vielleicht
>> weiß ja einer von Euch eine verständliche Einführung, mit der
>> einem alt gewordenen Delphianer wie mir zu helfen wäre?

> Wo klemmt es denn mit FireDAC und MS Access? Welche
> Access-Datenbankversion?


Ich finde einfach keine Rubriken, in die ich, wie mit DAO
gewohnt, meine Parameter eintragen kann, also Namen und
Adresse der *.mdb-Datenbank in tDatabase und der Datei-
Namen in tTable.
Die auf meinem Rechner verfügbare Datenbankversion ist
Microsoft Access 2002.

> Alternative: dbGo/ADO


Danke - aber wenn es sich vermeiden läßt ...
Matthias Eißing (22.11.2018, 07:17)
Jakob Achterndiek <achterndiek> wrote:
> Am 21.11.2018 um 16:17 schrieb Matthias Eißing:
> Ich finde einfach keine Rubriken, in die ich, wie mit DAO
> gewohnt, meine Parameter eintragen kann, also Namen und
> Adresse der *.mdb-Datenbank in tDatabase und der Datei-
> Namen in tTable.


Das ist alles hier beschrieben:
)

Also über ein TFDConnection die Params

Beispiel gibt es auch


Konkret:
FDConnection1.Params.Add('DriverID=MSAcc');
FDConnection1.Params.Add('Database=c:\test.mdb');
FDConnection1.Connected := True;
Jakob Achterndiek (23.11.2018, 14:08)
Am 22.11.2018 um 06:17 schrieb Matthias Eißing:
> Das ist alles hier beschrieben:
> [..]
> Konkret:
> FDConnection1.Params.Add('DriverID=MSAcc');
> FDConnection1.Params.Add('Database=c:\test.mdb');
> FDConnection1.Connected := True;


Vielen Dank für den Anstoß, das alles noch einmal geduldig
durchzuprobieren. Eben hatte ich mein Erfolgserlebnis in dieser
Sache: Mein Testprogramm greift auf die MS-Access-Datenbank zu
und zeigt mir alle Daten in der gewünschten Anordnung. Der
entscheidende Hinweis war der auf die Parameter für die
FDConnection. Jetzt kann ich das also in die bestehende ältere
Programmversion noch aus Delphi 5 übernehmen.
Noch einmal danke
und einen freundlichen Gruß
Jakob Achterndiek (12.12.2018, 21:16)
Am 23.11.2018 um 13:08 schrieb Jakob Achterndiek:
> Am 22.11.2018 um 06:17 schrieb Matthias Eißing:
> Vielen Dank für den Anstoß,
> [..] Jetzt kann ich das also in die bestehende ältere
> Programmversion noch aus Delphi 5 übernehmen.


Nachdem das geschehen ist, wundere ich mich darüber, daß das Programm
bisweilen entsetzlich langsam läuft.

Ich habe lediglich den Code an die FireDAC-Komponenten angepaßt und
ansonsten alle Algorithmen unverändert gelassen. Jetzt braucht das
Programm, das aus einer genealogischen Datenbank und einer Bilddatei
eine druckbare Rich-Text-Datei erzeugt, unter Windows 10 für einen
Durchlauf mit etwa 4000 Zugriffen auf die Datensätze bis zu sieben
Minuten - statt vorher, in Windows 7 mit Diamond Access von Timur
Islamov in Delphi 5 kompiliert, knappe sieben Sekunden.

Woran mag das liegen? Was tut das Programm in der ganzen Zeit?
Matthias Eißing (13.12.2018, 12:18)
Am 12.12.18 um 20:16 schrieb Jakob Achterndiek:

> Ich habe lediglich den Code an die FireDAC-Komponenten angepaßt und
> ansonsten alle Algorithmen unverändert gelassen. Jetzt braucht das
> Programm, das aus einer genealogischen Datenbank und einer Bilddatei
> eine druckbare Rich-Text-Datei erzeugt, unter Windows 10 für einen
> Durchlauf mit etwa 4000 Zugriffen auf die Datensätze bis zu sieben
> Minuten - statt vorher, in Windows 7 mit Diamond Access von Timur
> Islamov in Delphi 5 kompiliert, knappe sieben Sekunden.
> Woran mag das liegen? Was tut das Programm in der ganzen Zeit?


Puh..... das mag/wird daran liegen:
- Properties / Cursor / Caching
- Programmierung

Mal den FDMonitor dazwischen setzen?



(Cooler Präsentator :-))
Ähnliche Themen