Wie heisst das nochmal?

devian_der_999

Mitglied
Hallo Forum,

ich hab folgendes Problem. Ich habe eine Datenbank, in der zwei Tabellen sind (Tabelle A und B).

Tabelle A ist immer Aktuell.
Jetzt soll Tabelle B sich jede Nacht (also täglich) mit A abgleichen.

Weiß jemand wie das heisst und, Gott bewahre ^^ , wie das geht? SQL statement technisch.


Gruß DeviAn

Edit:
ich beziehe mich auf Oracle ;)
 
Zuletzt bearbeitet:
Moin,

SQL-technisch so aus dem Stand nicht :(
Kannst Du die Tabelle nicht einfach spiegeln (sprich: B leeren und komplett neu aus A füllen) ? ?
Das wäre IMHO der einfachste Weg ...

Gruß
Klaus
 
Also im prinzip sind es 3 Tabellen:
Tabelle 1 = Personaldaten (VorName, Nachname, PersonalNummer)
Tabelle 2 = Zeitdaten (PersonalNummer, Ausweißnummer)
Tabelle 3 = Mitarbeiter (MitarbeiterID, VorName, Nachname, PersonalNummer, Ausweißnummer)

Tabelle 3 wird beim erstellen mit den Daten aus Tabelle 1 und 2 gefüllt.

Jetzt kann es natürlich seien das sich der name von "Heinz Gehunter" aus Tabelle 1 in "Heinz Gehauf" ändert. Und nun soll quasi Tabelle 3 jeden Tag prüfen ob sich in Tabelle 1 und/oder 2 sich etwas geändert hat und dies dann abgleichen. Sprich "Heinz Gehunter" in "Heinz Gehauf " bei sich selbst ändern.

Einfach leeren und neu befüllen geht aus 2 Gründen nicht:
1. Sind es zwichen 10k und 5k einträge --> zuviel
2. habe ich ein Autoincrement in Tabelle 3 um die MitarbeiterID zu bestimmen und die würde sich dan ja ändern, so das die Tabellen die darauf referenziern falsche daten hätten...:confused::confused:

Edit:
ein UPDATE kann ich auch nicht ausführen, weil ich nicht genu weiß, was sich ändert. Theoretisch könnte es alles sein(auch die PersonalNummer).

Ich hatte irgendwie an einen Trigger gedacht, aber mir fällt nich ein wie sich das realisieren lässt...
 
Zuletzt bearbeitet:
Moin,

mal davon abgesehen, dass ich das Ganze für eine relativ redundante Datenhaltung halte und mich frage, warum Du dann nicht gleich (und ausschließlich) die Tabelle 3 füllst ....

Du könntest Dir dann natürlich auch Trigger für Tab. 1 und Tab. 2 schreiben,die bei jedem Update/Insert/Delete eine Entsprechung in Tab. 3 vornehmen!

Dann sparst Du den nächtlichen Abgleich!

Gruß
Klaus
 
Dat stimmt. das problem ist das ich keine berechtigung habe/kriege um auf den tab 1und 2 irgendwas zu schreiben. (Leider) ich darf nur lesen.
(Dumme Firmen Philosophie)
 
dann soll es halt der schreiben, der es darf ... ;-]
Oder ist das auch gegen Eure Firmenpolitik :)

Ich denke, das eine solche Lösung auch um Längen performanter ist, als wenn Du (ggf. tausende) von DS abgleichen musst, oder

Gruß
Klaus
 
da ich ja leider auf tab 1 und 2 keine Trigger schreiben darf und damit ich nicht zuviel traffic verursache, passierts halt einmal tägl. nachts wenn sowieso keiner online ist :)
 

Neue Beiträge

Zurück