Autor Beitrag
leemaen
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 11.09.18 12:25 
Hallo liebes Forum,

Ich bin Delphi Anfänger und hab nun ein kleines Projekt bekommen wo es darum geht aus einer Access DB eine MYSQL DB zu erstellen. Wie könnte ich am besten solch ein Projekt in Angriff nehmen? Meine Überlegung bisher:

1. Access DB Struktur in eine Datei exportieren
2. Aus der Datei (csv,xml...)eine MYSQL DB erstellen. (Falls das mit delphi möglich ist)
3. Datenübername


Die vorhandene Access DB beinhaltet nur 4 Tabellen mit ca 100 Datensätzen.

Es gibt bestimmt bessere Möglichkeiten, bitte teilt mir Eure Ideen mit.

Vielen Dank,
Thomas.
doublecross
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 129
Erhaltene Danke: 23

Windows 7
C#; Visual Studio 2015
BeitragVerfasst: Di 11.09.18 12:56 
Hallo,

ich würde den Umweg über die Exportdateien gar nicht gehen.

Sichtpunktartig würde ich so vorgehen:

  • Stelle Verbindung zur AccessDB her
  • Stelle Verbindung zur MySQL her.
  • Laufe in einer Schleife über alle Tabellen der Access DB
  • Überprüfe, ob eine gleichnamige Tabelle in der MySQL enthalten ist.
  • Wenn nicht, lege eine Entsprechende Tabelle in MySQL an, ahme dabei die Feldstruktur der Access Tabelle nach.
  • Wenn du eine Tabelle Angelegt hast, Kopiere die Daten aus der Access Tabelle.


Durch das verwenden von zwei Connections kannst du gleichzeitig aus der einen Datenbank lesen und in die andere Schreiben. In diesem Beitrag, findest du auch eine rudimentäre Anleitung, wie man eine Tabellenstruktur per FieledDefs anlegt. Diese kann man auch auslesen. In Kombination kann man diese also so Kopieren.
leemaen Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Di 11.09.18 14:41 
doublecross, dass hört sich nach einen excellenten Plan an. Vielen Dank für deine Hinweise. Ich werde mich in der Richtung schlau machen! Kann sein das ich später nochmal die ein oder andere Frage habe. :roll:

Moderiert von user profile iconNarses: Komplettzitat des letzten Beitrags entfernt.