Was ist Referentielle Integrität?

1 Antwort

Ich habe z.B. eine Tabelle Mitglieder mit der Mitgl-Nr als Primärschlüssel. Dazu habe ich eine weitere Tabelle mit den Zahlungen (pro Mitglied habe ich ja mehrere Zahlungen, deshalb die eigene Tabelle). In der Tabelle Zahlungen steht auch die Mitgl-Nr, um den Bezug zum Mitglied herzustellen. Nun könnte es sein, dass in der Tabelle Zahlungen Mitgl-Nrn stehen, die es in der Tabelle Mitglieder gar nicht gibt. Z.B. weil das Mitglied gelöscht wurde, die dazugehörenden Zahlungen aber nicht. Um das zu verhindern, bietet die Datenbank eine Möglichkeit unter dem Begriff Referentielle Integrität an, dies zu überwachen. Man definiert in der Tabelle Zahlungen die Mitgl-Nr der Mitgliedertabelle als Fremdschlüssel. Damit sind nur noch Mitgl-Nrn gültig, die in der sog. übergeordneten Tabelle auch vorkommen. Das ist aber noch nicht alles. Es gibt drei Arten von Fremdschlüssel:

  1. delete restict bedeutet, dass das Löschen eines Mitgliedes nur möglich ist, wenn keine Zahlungen vorhanden sind. Ggf. muss man diese vorher löschen.

  2. delete cascade bedeutet, dass im Falle des Löschens die Zahlungen einfach mitgelöscht werden.

  3. delete set null bedeutet, dass die Zahlungen bleiben, aber die ungültig gewordenen Mitgl-Nrn auf null gesetzt werden (geht nicht immer).

Wird eine übergeordnete Tabelle neu erstellt, werden alle Fremdschlüssel-Definitionen entfernt und müssen neu eingerichtet werden.

Anweisungen, die gegen die Integrität verstoßen, werden mit einer Fehlermeldung abgewiesen.

Solche Abhängigkeiten können über mehrere Stufen definiert werden, auch rekursiv, d.h. im Kreis herum. Es gibt dann keine Tabelle, die ganz oben über allen Tabellen steht. Das ist mitunter kompliziert, aber es gibt sinnvolle Anwendungen dafür.

Zu diesem Thema habe ich schon mehrfach Antworten verfasst, suche mal unter wotan38, vielleicht findest die noch irgendwo.

Was bedeutet moralische Integrität?

...zur Frage

Email auswerten und weiterleiten?

Hallo,

Ich habe eine Website auf der eine Umfrage ausgefüllt werden kann. Ich bekomme dann vom Server eine Email mit den Ergebnissen und Kontaktdaten. Diese würde ich dann gerne auswerten lassen und in Excel oder so eintragen lassen. Dann müsste noch die Email ausgelesen werden und an diese eine vorgefertigte Email geschickt werden (geht in Excel ja mit Makros. Ich habe keinen Zugriff auf den Server, habe also nur die Email zum Daten auslesen. Programme die was Kosten können auch vorgeschlagen werden, es sollte aber Trmestversionen geben. Schon mal Danke

...zur Frage

Microsoft Access lernen und verstehen wie?

Hat jemand ein Video oder ein Bericht oder sonstiges hilfreiches.
Da ich bis jetzt damit zurecht komme und in der nächsten Woche im Fach Informatik darüber die klausur habe, würde ich mich freuen, wenn mir vielleicht jemand helfen könnte.

Danke.

...zur Frage

Datenbank - Access (Verstoß gegen referentielle Integrität)

Hey Leute,

ich habe nur eine kurze Frage. Könnt ihr mir ein Beispiel für einen Verstoß gegen die referenzielle Integrität geben. (Access)

PS: ich bin erst in der zwölften Klasse!

Danke im Voraus

...zur Frage

was ist persönliche Integrität?

Aus dem Web: Persönliche Integrität ist die Übereinstimmung der persönlichen Werte(systeme) mit dem eigenen Handeln und auch dem vorausgegangenen Denken. Die Bandbreite dieser Wertvorstellungen richtet sich oft nach den politischen, religiösen oder humanitären Ansichten einer Person.

könnt ihr das etwas vereinfachen, ableiten...? wie schaffe ich mir eine Eselsbrücke? das Wort Integrität ist unglaublich abstrakt für mich..

...zur Frage

Alternatives Datenbank Programm zu Access?

Hallo~

Mich hätte interessiert, ob es ein ähnliches Programm wie Access gibt? Weil das von Windows ja eig immer was kostet.. ansonsten habe ich ur eine Testversion gefunden... Eine Freeware wäre mir lieb. Auf jeden Fall brächte ich ein Programm, mit dem ich eine eigene Datenbank erstellen kann (nicht im Web, als Datei speicherbar). Mir geht's dabei vor allem um die Suchfunktion und dass ich selbst die Begriffe und Werte eingeben kann.

Danke im Voraus!

...zur Frage

Was möchtest Du wissen?