Datenbankvergleich (Struktur) – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self?srt=yes Datenbankvergleich (Struktur) Tue, 01 Jul 03 07:18:54 Z https://forum.selfhtml.org/self/2003/jul/1/datenbankvergleich-struktur/426595?srt=yes#m426595 https://forum.selfhtml.org/self/2003/jul/1/datenbankvergleich-struktur/426595?srt=yes#m426595 <p>Hallo zusammen,</p> <p>ich bin auf der Suche nach einer (realtiv) einfachen Methode, zwei Datenbanken zu vergleichen. Hier sollen jedoch nicht die Daten sondern vielmehr die Struktur der Datenbanken verglichen werden.</p> <p>Dies beinhaltet:</p> <ul> <li>Feldtypen</li> <li>Primärschlüssel<br> etc.</li> </ul> <p>Kann mir vielleicht jemand sagen, wie ich sowas am besten angehen soll. Das habe ich nämlich noch nie gemacht und stehe deshalb ziemlich blöd da.</p> <p>Danke schonmal im voraus,<br> Mipe</p> Datenbankvergleich (Struktur) Tue, 01 Jul 03 17:28:02 Z https://forum.selfhtml.org/self/2003/jul/1/datenbankvergleich-struktur/426596?srt=yes#m426596 https://forum.selfhtml.org/self/2003/jul/1/datenbankvergleich-struktur/426596?srt=yes#m426596 <p>Hi Mipe,</p> <blockquote> <p>ich bin auf der Suche nach einer (realtiv) einfachen Methode, zwei Datenbanken zu vergleichen. Hier sollen jedoch nicht die Daten sondern vielmehr die Struktur der Datenbanken verglichen werden.<br> Dies beinhaltet:</p> <ul> <li>Feldtypen</li> <li>Primärschlüssel<br> etc.</li> </ul> </blockquote> <p>hm - was genau ist mit "etc." gemeint? Davon hängt ab, wie kompliziert Deine Aufgabe ist.</p> <p>Und was soll das Ergebnis Deines "Vergleichs" sein?<br> Reicht ein true/false? Oder willst Du eher ein "diff" nachbilden?</p> <p>Sind zwei Tabellen dann "gleich", wenn sie dieselben Datentypen, aber in unterschiedlicher Anordnung enthalten?</p> <p>Sind zwei Datenbanken dann "gleich", wenn sie "gleiche" Tabellen, aber mit unterschiedlichen Namen enthalten?</p> <blockquote> <p>Kann mir vielleicht jemand sagen, wie ich sowas am besten angehen soll. Das habe ich nämlich noch nie gemacht und stehe deshalb ziemlich blöd da.</p> </blockquote> <p>Tendentiell würde ich auf beiden Seiten die Tabellenstrukturen exportieren (DESCRIBE liefert Angaben zu jeweils einer Tabelle, aber wo die Informationen über alle definierten Tabellen gespeichert sind, das hängt von Deinem RDBMS ab), die Ergebnisse normalisieren und dann ... tja, Du hast weiter oben ein paar Fragen zu beantworten ...</p> <p>Aber tendentiell vermute ich, daß Du bei der Normalisierung einiges mit einer cleveren Codierung erledigen kannst - beispielsweise Tabellenspalten nach Typen sortieren, falls deren Anordnung egal ist, und Tabellenmengen wirklich als Mengen und nicht als Listen darstellen (in Perl beispielsweise über Hashes).</p> <p>Versuche, die Semantik einer Tabellenstruktur in einem normalisierten String zu codieren. Dies reduziert Dein Problem auf den Vergleich zweier Mengen von Strings.</p> <p>Viele Grüße<br>       Michael</p> <div class="signature">-- <br> T'Pol: I apologize if I acted inappropriately.<br> V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.<br> (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)<br>  => <a href="http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A%7C+fo%3A%7D+ch%3A%5D+rl%3A%28+br%3A%5E+n4%3A%28+ie%3A%25+mo%3A%29+va%3A%7C+de%3A%2F+zu%3A%7C+fl%3A%28+ss%3A%29+ls%3A%7E+js%3A%7C" rel="nofollow noopener noreferrer">http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|</a><br> Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen. </div>