Zitat von
RWarnecke:
Du möchtest also soetwas wie den IBExpert für Interbase und Firebird für mehrere Datenbanken bauen. Habe ich das soweit richtig verstanden ?
Nein, Updates zu seinem Programm sollen die bestehende Datenbank aktualisieren können.. (Also die Metadaten)
Morphie, schaue dir an, was du an Objekttypen verwendest. Dann schaue ob UniDAC dir eine generische Möglichkeit gibt, Metadaten einer
DB auszulesen.
Also Tabellen, Spalten, Indizes, ...
Nun nimmst du dir einfach ein Objektmodell, was das für dich ausdrücken kann. So dass du bei einem Update sagen kannst: "so soll es ausssehen".
Dein Programm muss dann die wirklichen Metadaten aus der
DB lesen und mit den geforderten Vergleichen.
Am Ende musst du ein Change script erzeugen, welches dann die
DB auf den neuesten Stand bringt.
Wenn UniDAC das nicht für die unterstützten DBs kann, solltest du dir eine abstrakte Basisklasse und Ableitungen für jedes
DBMS schreiben, die aus deiner Definition für eine Tabelle (mit Infos über Spalten, Indizes, Keys, ...) und dem was wirklich da ist das richtige Change script erzeugen können.
Das ist egentlich reine Fleißarbeit. Also viel Arbeit aber nicht wirklich sehr schwierig.
Ich weiß leider nichts von einer Delphi Bibliothek, die das für dich übernehmen könnte...