Zum Inhalt springen

Programm für Dictionaryverwaltung


robotto7831a

Empfohlene Beiträge

Hallo zusammen,

wir haben ein altes Dictionary Programm, mit dem man Tabellen anlegen, ändern, löschen kann und wenn man das Programm laufen läst, dann prüft das in der Oracle Datenbank ob Tabellen fehlen und legt diese dann wieder an, wenn man die mal gelöscht haben sollte.

Leider ist das Programm nicht mit Oracle 9 kompatibel. Die Firma von der das Programm ist, gibt es schon lange nicht mehr.

Kennt jemand ein ähnliches Programm für Oracle 9?

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ein solches Tool was überwacht ob alle angelegten Tabellen noch existieren kenne ich nicht, aber du kannst sowas doch selber machen. Du lässt einfach in regelmäßigen Abständen ein Script laufen was alle Tabellen anlegt. Existiert eine Tabelle schon gibts ne Fehlermeldung und alle die nicht existieren werden neu angelegt. Das ganze kannst du auch mit Export/Import machen. Du exportierst die Datenbank (oder alle relevanten Tabellen) und Importierst die dann in regelmäßigen Abständen. Wenn du nur die Strucktur beim Import haben willst und nicht auch die Inhalte gibts du beim Export das Attribut "rows=no" an.

Nachteil ist, das du bei jeder Struckturveränderung einen neuen Export-Dump bzw. ein neues Tabellenerstellungsscript erstellen musst....

Aber wieso kommt es überhaupt dazu das bei euch jemand Tabellen löscht? Nimm doch allen das Recht "drop Table" weg.....

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ok, dafür ist der andere Vorschlag unpraktisch.....

Ich kann dir höchstens noch vorschlagen die Verschiedenen DBs zu vergleichen mit einem sql-Script und dann die fehlenden von hand anlegen...

Handelt es sich tatsächlich um 7 Datenbanken (instanzen) oder lediglich um Schemata??

Wenn du Schemata vergleichen willst ist das ja ziemlich einfach mit z.B. folgendem Select:

select max(owner) object_name, object_type from dba_objects where owner in('SchemaA','SchemaB') group by object_name, object_type having count(object_name) < 2;

Du must nur noch für SchemaA und SchemaB die namen einzutragen und bekommst die Tabellen, Indizes,.... angezeigt die in dem jeweils anderem Schema nicht da sind.

Das gleiche kannst du mit den sonstigen Attributen (Colums,...) in der Datenbanken machen.

Wenn du allerdings mehrere Instanzen hast, müsstest du die Abfrage über mehrer Datenbanken machen vielleicht mit einem union select über die beiden dba_objects der Datenbanken (Wofür die Datenbanken optimalerweise verlinkt sind).

Ansonsten hast du natürlich noch die Möglichkeit einen einfachen Datenmodelldesigner zu nehmen. Z.B. Sybase Powerdesigner. Du kannst mit reverse engeneering das Datenmodell aus einer DB (Schema) holen und dieses dann zum abgleich gegen eine anderes Schema laufen lassen und als ergebnis bekommst du dann die sql-Scripte um das fehlende hinzuzufügen. Aber diese Programme sind meiner meinung nach nicht die besten, da die physical options bei Oracle DB in diesen Tools fast immer probleme machen.....

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...