AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Verschiedene Datenbanken pflegen
Thema durchsuchen
Ansicht
Themen-Optionen

Verschiedene Datenbanken pflegen

Ein Thema von Morphie · begonnen am 10. Okt 2008 · letzter Beitrag vom 10. Okt 2008
Antwort Antwort
Morphie

Registriert seit: 27. Apr 2008
Ort: Rahden
630 Beiträge
 
#1

Verschiedene Datenbanken pflegen

  Alt 10. Okt 2008, 17:03
Datenbank: Firebird, MySQL,... • Zugriff über: UniDAC
Ich habe vor ein Programm zu erstellen, welches verschiedene Datenbanken anbietet, z.B. Firebird und MySQL.
Dafür benutz ich UniDAC von CoreLab.
Das Programm wird ein längeres Projekt, welches auch immer weiter gepflegt und erweitert wird.
Deswegen nun meine Frage:
Wie lass ich mein Programm die verschiedenen Datenbanken am Besten pflegen? Also neue Tabellen anlegen, alte unbenötigte Felder löschen, neue Felder anlegen, Indizes setzen,...

Hat da jemand ne Erfahrung mit?
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#2

Re: Verschiedene Datenbanken pflegen

  Alt 10. Okt 2008, 18:41
Du möchtest also soetwas wie den IBExpert für Interbase und Firebird für mehrere Datenbanken bauen. Habe ich das soweit richtig verstanden ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#3

Re: Verschiedene Datenbanken pflegen

  Alt 10. Okt 2008, 18:53
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...
Robert Giesecke
I’m a great believer in “Occam’s Razor,” the principle which says:
“If you say something complicated, I’ll slit your throat.”
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz