{"id":55001586,"date":"2026-02-01T00:00:00","date_gmt":"2026-02-06T13:37:05","guid":{"rendered":"http:\/\/access-im-unternehmen.aix-dev.de\/aiu\/?p=1586"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Warum_Beziehungen_mit_referenzieller_Integritaet","status":"publish","type":"post","link":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/","title":{"rendered":"Warum Beziehungen mit referenzieller Integrit&auml;t?"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4\" width=\"1\" height=\"1\" alt=\"\"><b>In unseren Access-Audits mit unseren Kunden treffen wir immer wieder auf das folgende Problem: Es gibt Tabellen, die zwar &uuml;ber ein Feld Datens&auml;tze aus anderen Tabellen referenzieren, aber es wurde gar keine Beziehung f&uuml;r diese Zuordnung definiert. Und wenn eine Beziehung angelegt wurde, wurde f&uuml;r diese keine referenzielle Integrit&auml;t festgelegt. Das birgt verschiedene Gefahren, die unter Umst&auml;nden sogar Auswirkungen auf den Unternehmensumsatz haben. Welche das sind und wie Sie diese Probleme beheben, zeigen wir in diesem Beitrag. Die Definition von Beziehungen mit referenzieller Integrit&auml;t ist essenziell und sollte, wenn diese noch nicht vorhanden sind, schnellstens nachger&uuml;stet werden. Das funktioniert in vielen F&auml;llen aber gar nicht so leicht, weil die Tabellen bereits inkonsistente Daten enthalten. Auch zur Identifizierung und Korrektur solcher Datens&auml;tze liefert dieser Beitrag die passenden L&ouml;sungen.<\/b><\/p>\n<p>Stellen wir uns vor, wir h&auml;tten eine Tabelle zum Speichern von Bestellungen und eine f&uuml;r die entsprechenden Bestellpositionen. Die Tabelle der Bestellungen enth&auml;lt ein Prim&auml;rschl&uuml;sselfeld, welches die erste Voraussetzung f&uuml;r ein konsistentes Datenmodell ist &#8211; somit k&ouml;nnen alle Datens&auml;tze dieser Tabelle eindeutig identifiziert werden.<\/p>\n<p>Auch die Tabelle der Bestellpositionen enth&auml;lt ein solches Prim&auml;rschl&uuml;sselfeld. Neben den &uuml;brigen, typischen Feldern f&uuml;r eine Bestellposition enth&auml;lt diese auch ein Feld, mit dem wir die Bestellposition einer Bestellung zuordnen k&ouml;nnen &#8211; nennen wir es <b>BestellungID<\/b>.<\/p>\n<p>Grunds&auml;tzlich ist die Zuordnung von Bestellpositionen zu einer Bestellung also gew&auml;hrleistet. Aber welche Probleme k&ouml;nnen auftreten, wenn wir keine referenzielle Integrit&auml;t definieren?<\/p>\n<h2>Probleme bei fehlender Beziehung oder ohne referenzielle Integrit&auml;t<\/h2>\n<p>Schauen wir uns das Datenmodell aus Bild 1 an. Hier sehen wir die beiden Tabellen, anhand derer wir die Vorteile der referenziellen Integrit&auml;t beschreiben wollen.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_001.png\" alt=\"Tabellen der Beispieldatenbank\" width=\"424,5589\" height=\"240,6486\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 1: Tabellen der Beispieldatenbank<\/span><\/b><\/p>\n<p>Der Tabelle <b>tblBestellungen <\/b>f&uuml;gen wir die Datens&auml;tze aus Bild 2 hinzu.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_002.png\" alt=\"Beispieldaten in der Tabelle tblBestellungen\" width=\"424,5589\" height=\"194,9826\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 2: Beispieldaten in der Tabelle tblBestellungen<\/span><\/b><\/p>\n<p>In der Tabelle <b>tblBestellpositionen <\/b>legen wir nun eine Bestellposition f&uuml;r die erste Bestellung an, indem wir das Feld <b>BestellungID <\/b>auf den Wert <b>1 <\/b>einstellen, also auf die erste Bestellung der Tabelle <b>tblBestellungen<\/b>. Soweit ist das kein Problem &#8211; die Bestellposition ist einer Bestellung zugeordnet.<\/p>\n<p>Das decken wir normalerweise ab, indem wir jeweils eine Bestellung in einem Hauptformular abbilden und in einem Unterformular die Bestellpositionen. Wenn der Name des Fremdschl&uuml;sselfelds in der Tabelle des Unterformulars mit dem des Prim&auml;rschl&uuml;sselfelds in der Datensatzquelle des Hauptformulars &uuml;bereinstimmt, erkennt Access dies sogar beim Hinzuf&uuml;gen des Unterformulars und tr&auml;gt dies korrekt in die Eigenschaften <b>Verkn&uuml;pfen nach <\/b>und <b>Verkn&uuml;pfen von <\/b>des Unterformular-Steuerelements ein (siehe Bild 3).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_003.png\" alt=\"Bestellungen und Bestelldetails in Haupt- und Unterformular\" width=\"649,559\" height=\"434,7113\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 3: Bestellungen und Bestelldetails in Haupt- und Unterformular<\/span><\/b><\/p>\n<p>Damit ordnet das Formular neue Bestellpositionen, die wir in das Unterformular eintragen, automatisch dem Bestelldatensatz im Hauptformular zu, weil das Fremdschl&uuml;sselfeld <b>BestellungID <\/b>direkt mit dem entsprechenden Prim&auml;rschl&uuml;sselwert aus dem Hauptformular gef&uuml;llt wird.<\/p>\n<h2>Bei 99 % der ausgewerteten Anwendungen funktionierte dies nicht!<\/h2>\n<p>Auch wenn dies eine scheinbare Sicherheit vorgaukelt: In unseren Untersuchungen von Kundendatenbanken haben wir bei fast allen Anwendungen herausgefunden, dass dies nicht zuverl&auml;ssig funktioniert. Die Gr&uuml;nde daf&uuml;r sind nicht genauer bekannt, weil die betroffenen Datens&auml;tze oft vor langer Zeit angelegt wurden. Aber: Wir haben nahezu &uuml;berall Probleme aufgedeckt, die zeigen, dass Benutzer erfinderisch sind und Wege finden, um die Zuordnung von Bestellungen und Bestellpositionen zu unterminieren.<\/p>\n<p>Dies zeigte sich in den folgenden Ergebnissen:<\/p>\n<ul>\n<li>Entweder haben wir Datens&auml;tze in der Tabelle <b>tblBestellpositionen <\/b>gefunden, die einen Fremdschl&uuml;sselwert aufweisen, der in der Tabelle <b>tblBestellungen <\/b>nicht mehr vorhanden war (oder nie gewesen ist). Das hei&szlig;t, dass entweder Bestellungen gel&ouml;scht wurden, ohne dass die entsprechenden Eintr&auml;ge in <b>tblBestellpositionen<\/b> auch entfernt wurden (wahrscheinlichere Variante), oder die Benutzer es geschafft haben, Fremdschl&uuml;sselwerte einzutragen, f&uuml;r die es kein Pendant im Prim&auml;rschl&uuml;sselfeld der Tabelle <b>tblBestellungen <\/b>gab.<\/li>\n<li>Oder wir haben Eintr&auml;ge in der Tabelle <b>tblBestellpositionen <\/b>gefunden, die im Fremdschl&uuml;sselfeld <b>BestellungID <\/b>den Wert <b>NULL <\/b>enthielten, also leer waren.<\/li>\n<\/ul>\n<p>Beides ist ung&uuml;nstig, denn es wurden scheinbar einmal Bestellungen plus Bestellpositionen eingetragen, die dann nicht zur Ausf&uuml;hrung kamen und somit potenziell den Umsatz vermindert haben.<\/p>\n<p>Dies kann passieren, wenn entweder das Formular nicht sauber programmiert und mit entsprechenden Validierungen ausgestattet wurde oder wenn die Benutzer Wege gefunden haben, die Daten direkt in den zugrunde liegenden Tabellen zu manipulieren und entweder Bestelldatens&auml;tze gel&ouml;scht oder Bestellpositionen ver&auml;ndert haben.<\/p>\n<p>Die L&ouml;sung ist also zum Beispiel, die Anwendung so sicher zu machen, dass derartige Manipulationen nicht mehr m&ouml;glich sind. Dazu muss das Formular vor Fehleingaben gesch&uuml;tzt werden und\/oder man muss verhindern, dass die Benutzer direkten Zugriff auf die Tabellen erhalten und so die Daten direkt in den Tabellen manipulieren.<\/p>\n<p>Dies war in den meisten Anwendungen nicht der Fall, auch wenn die Entwickler uns glaubhaft machen wollten, dass sie alle notwendigen Ma&szlig;nahmen getroffen h&auml;tten.<\/p>\n<p>Es gibt jedoch noch eine einfachere M&ouml;glichkeit, um sicherzustellen, dass es keine Datens&auml;tze in einer Tabelle wie <b>tblBestellpositionen <\/b>gibt, die keiner Bestellung zugeordnet sind. Dabei handelt es sich um das Anlegen einer Beziehung zwischen den Tabellen (falls bisher nicht vorhanden) und die Festlegung von referenzieller Integrit&auml;t f&uuml;r die Beziehung.<\/p>\n<h2>Funktion der referenziellen Integrit&auml;t<\/h2>\n<p>Wenn wir referenzielle Integrit&auml;t definieren, aktivieren wir zwei wichtige Funktionen f&uuml;r die Beziehung. Nehmen wir als Beispiel wieder die Beziehung zwischen der Tabelle <b>tblBestellungen <\/b>und <b>tblBestellpositionen<\/b>. Wir f&uuml;gen mit der referenziellen Integrit&auml;t eine Restriktion hinzu, welche die Werte im Fremdschl&uuml;sselfeld <b>BestellungID <\/b>in der Tabelle <b>tblBestellpositionen <\/b>auf die folgenden Werte einschr&auml;nkt:<\/p>\n<ul>\n<li>Es sind alle Werte erlaubt, die im Prim&auml;rschl&uuml;sselfeld der verkn&uuml;pften Tabelle vorhanden sind.<\/li>\n<li>Und zus&auml;tzlich kann, wenn wir dies nicht anderweitig unterbinden, der Wert <b>NULL <\/b>vorliegen.<\/li>\n<\/ul>\n<p>Letzteres k&ouml;nnen wir verhindern, indem wir die Eigenschaft <b>Eingabe erforderlich <\/b>f&uuml;r das Fremdschl&uuml;sselfeld auf <b>Ja <\/b>einstellen. Das ist sinnvoll, um auch diese L&uuml;cke zu schlie&szlig;en. Es gibt jedoch F&auml;lle abseits von Bestellungen und Bestellpositionen, wo man vielleicht erst die Datens&auml;tze in der Tabelle mit dem Fremdschl&uuml;sselfeld anlegt und diese erst sp&auml;ter zuordnen m&ouml;chte &#8211; dann kann man <b>NULL<\/b>-Werte zulassen.<\/p>\n<p>Hier sollte man jedoch regelm&auml;&szlig;ig pr&uuml;fen, ob sich keine nicht zugeordneten Datens&auml;tze in dieser Tabelle befinden.<\/p>\n<p>Wenn wir keine referenzielle Integrit&auml;t festlegen, k&ouml;nnen wir eine Bestellposition zur Tabelle <b>tblBestellpositionen <\/b>hinzuf&uuml;gen, die einen Wert im Feld <b>BestellungID <\/b>enth&auml;lt, der nicht in der Tabelle <b>tblBestellungen <\/b>enthalten ist (siehe Bild 4).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_004.png\" alt=\"Bestellposition ohne passende Bestellung\" width=\"499,5589\" height=\"274,5803\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 4: Bestellposition ohne passende Bestellung<\/span><\/b><\/p>\n<h2>Wenn keine referenzielle Integrit&auml;t festgelegt werden kann<\/h2>\n<p>Wir versuchen nun, eine Beziehung mit referenzieller Integrit&auml;t f&uuml;r die Tabellen anzulegen. Dazu ziehen wir im Beziehungen-Fenster das Feld <b>BestellungID <\/b>der Tabelle <b>tblBestellpositionen <\/b>auf die Tabelle <b>tblBestellungen<\/b>. Es erscheint der Dialog <b>Beziehungen bearbeiten<\/b>, wo wir die Option <b>Mit referenzieller Integrit&auml;t <\/b>aktivieren (siehe Bild 5).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_005.png\" alt=\"Versuch, referenzielle Integrit&auml;t zu definieren\" width=\"599,559\" height=\"455,2582\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 5: Versuch, referenzielle Integrit&auml;t zu definieren<\/span><\/b><\/p>\n<p>Wenn wir jetzt auf <b>Erstellen <\/b>klicken, erhalten wir die Fehlermeldung aus Bild 6. Der Grund ist offensichtlich: Wir haben in der Tabelle <b>tblBestellpositionen <\/b>Werte im Feld <b>BestellungID<\/b>, die in der Tabelle <b>tblBestellungen <\/b>nicht vorhanden sind.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_006.png\" alt=\"Fehlermeldung beim Versuch, referenzielle Integrit&auml;t zu definieren\" width=\"424,5589\" height=\"498,6508\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 6: Fehlermeldung beim Versuch, referenzielle Integrit&auml;t zu definieren<\/span><\/b><\/p>\n<p>Dies ist der einfachste Test, um zu pr&uuml;fen, ob alle Datens&auml;tze aus <b>tblBestellpositionen <\/b>korrekt der Tabelle <b>tblBestellungen <\/b>zugeordnet sind.<\/p>\n<p>Etwas schwieriger wird es, im Anschluss herauszufinden, welche der Datens&auml;tze der Tabelle tblBestellpositionen das Definieren referenzieller Integrit&auml;t verhindern &#8211; dazu weiter unten mehr.<\/p>\n<h2>Erfolgreiches Festlegen referenzieller Integrit&auml;t<\/h2>\n<p>In diesem Fall l&ouml;schen wir einfach den Datensatz, der auf die nicht vorhandene Bestellung mit dem Wert <b>12 <\/b>im Feld <b>BestellungID <\/b>verweist. Danach k&ouml;nnen wir die referenzielle Integrit&auml;t f&uuml;r diese Tabelle aktivieren.<\/p>\n<p>Das Ergebnis sehen wir in Bild 7. Dass es sich um eine Beziehung mit referenzieller Integrit&auml;t handelt, erkennen wir an dem Unendlich-Symbol auf der einen und der Pfeilspitze auf der anderen Seite.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_007.png\" alt=\"Erfolgreich hergestellte referenzielle Integrit&auml;t\" width=\"499,5589\" height=\"283,1601\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 7: Erfolgreich hergestellte referenzielle Integrit&auml;t<\/span><\/b><\/p>\n<h2>Auswirkung der Festlegung referenzieller Integrit&auml;t pr&uuml;fen<\/h2>\n<p>Damit k&ouml;nnen wir uns nun anschauen, wie sich die referenzielle Integrit&auml;t auswirkt.<\/p>\n<p>Diese verhindert zun&auml;chst das L&ouml;schen von Datens&auml;tzen aus der Tabelle <b>tblBestellungen<\/b>, denen bereits ein Datensatz der Tabelle <b>tblBestellpositionen <\/b>zugeordnet wurde.<\/p>\n<p>Wenn wir versuchen, eine Bestellung aus der Tabelle <b>tblBestellungen <\/b>zu l&ouml;schen, der bereits eine Bestellposition zugeordnet ist, l&ouml;sen wir die Fehlermeldung aus Bild 8 aus.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_008.png\" alt=\"Fehler beim Versuch, eine Bestellung mit Bestellpositionen zu l&ouml;schen\" width=\"499,5589\" height=\"304,8156\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 8: Fehler beim Versuch, eine Bestellung mit Bestellpositionen zu l&ouml;schen<\/span><\/b><\/p>\n<p>Auf der anderen Seite k&ouml;nnen wir in der Tabelle <b>tblBestellpositionen <\/b>keine Datens&auml;tze mehr anlegen, die im Fremdschl&uuml;sselfeld <b>BestellungID <\/b>einen Wert enthalten, der nicht im gleichnamigen Feld der Tabelle <b>tblBestellpositionen <\/b>enthalten ist.<\/p>\n<p>F&uuml;gen wir hier einen neuen Datensatz ein und geben f&uuml;r diesen den Wert <b>13 <\/b>im Feld <b>BestellpositionID <\/b>ein, erhalten wir die Fehlermeldung aus Bild 9.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_009.png\" alt=\"Fehler beim Versuch, eine Bestellposition zu einer nicht vorhandenen Bestellung anzulegen\" width=\"499,5589\" height=\"363,7564\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 9: Fehler beim Versuch, eine Bestellposition zu einer nicht vorhandenen Bestellung anzulegen<\/span><\/b><\/p>\n<p>Damit sind wir f&uuml;r zuk&uuml;nftige Dateneingaben gut aufgestellt.<\/p>\n<h2>Referenzielle Integrit&auml;t gilt &uuml;berall<\/h2>\n<p>Der wichtigste Vorteil nach der Definition der referenziellen Integrit&auml;t ist, dass diese &uuml;berall gilt: in der Datenblattansicht von Tabellen und Abfragen und auch in Formularen.<\/p>\n<p>Wir k&ouml;nnen die so festgelegten Regeln also nicht mehr umgehen und sichern so zumindest bez&uuml;glich der Beziehung zwischen Bestellungen und Bestellpositionen einen konsistenten Datenbestand.<\/p>\n<p>Ein weiterer Vorteil ist, dass solche Beziehungen auch bei der Migration zum SQL Server etwa mit dem SQL Server Migration Assistant &uuml;bernommen werden.<\/p>\n<h2>Aktualisierungs- und L&ouml;schweitergabe<\/h2>\n<p>Wenn wir noch einmal den Dialog <b>Beziehungen bearbeiten <\/b>&ouml;ffnen, sehen wir f&uuml;r die referenzielle Integrit&auml;t zwei weitere Optionen (siehe Bild 10).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_010.png\" alt=\"Weitere Optionen f&uuml;r die referenzielle Integrit&auml;t\" width=\"424,5589\" height=\"263,726\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 10: Weitere Optionen f&uuml;r die referenzielle Integrit&auml;t<\/span><\/b><\/p>\n<h2>Aktualisierungsweitergabe<\/h2>\n<p>Die erste hei&szlig;t <b>Aktualisierungsweitergabe an verwandte Datens&auml;tze<\/b>. Wenn wir diese aktivieren, erhalten wir das folgende Verhalten: &Auml;ndern wir nun einen der Werte des Prim&auml;rschl&uuml;sselfelds etwa der Tabelle <b>tblBestellungen<\/b>, dann wird diese &Auml;nderung auch auf die mit diesem Datensatz verkn&uuml;pften Eintr&auml;ge der Tabelle <b>tblBestellpositionen <\/b>&uuml;bertragen.<\/p>\n<p>Diese Option wird, wenn wir mit einem Autowert als Prim&auml;rschl&uuml;sselfeld in <b>tblBestellungen <\/b>arbeiten, wohl eher selten bis gar nicht verwendet &#8211; zumindest nicht, wenn das Prim&auml;rschl&uuml;sselfeld nur als eindeutige Identifikation f&uuml;r die Datens&auml;tze genutzt wird. Hier ist die Option also nicht sinnvoll und d&uuml;rfte eher die Performance verschlechtern.<\/p>\n<p>Die Option ist nur sinnvoll, wenn es geplant ist, den Prim&auml;rschl&uuml;sselwert nach Bedarf anpassen zu k&ouml;nnen. Das kann der Fall sein, wenn das Prim&auml;rschl&uuml;sselfeld eine fachliche Bedeutung hat und f&uuml;r Kundennummern, Produktnummern et cetera genutzt wird. Sollte hier einmal eine Aktualisierung auftreten, spart die Aktualisierungsweitergabe viel Zeit und Arbeit.<\/p>\n<h2>L&ouml;schweitergabe<\/h2>\n<p>Die zweite Option hei&szlig;t <b>L&ouml;schweitergabe an verwandte Datens&auml;tze<\/b>. Wenn wir sie aktivieren, wirkt sich in unserem Beispiel das L&ouml;schen eines der Datens&auml;tze der Tabelle <b>tblBestellungen <\/b>so aus, dass auch alle Datens&auml;tze der Tabelle <b>tblBestellpositionen<\/b>, die mit dieser Bestellung verkn&uuml;pft sind, gel&ouml;scht werden. Allgemein wirkt sich das L&ouml;schen eines Datensatzes der Tabelle, die das an der Beziehung beteiligte Prim&auml;rschl&uuml;sselfeld enth&auml;lt, so aus, dass auch die Datens&auml;tze der Tabelle mit dem Fremdschl&uuml;sselfeld gel&ouml;scht werden.<\/p>\n<p>Wenn wir eine Kundentabelle verwenden, die per referenzieller Integrit&auml;t mit einer Bestellungstabelle verkn&uuml;pft ist, werden beim L&ouml;schen eines Kunden auch alle mit diesem Kunden verkn&uuml;pften Bestellungen gel&ouml;scht (und in der Folge gegebenenfalls auch alle Bestellpositionen, wenn auch hier referenzielle Integrit&auml;t festgelegt ist).<\/p>\n<p>Mit dieser Option sollte man sehr sparsam und gewissenhaft umgehen. Sie spart viel Arbeit, wenn man sie verwendet, denn das L&ouml;schen muss hier nur noch f&uuml;r die oberste Tabelle der Hierarchie durchgef&uuml;hrt werden.<\/p>\n<p>Andererseits w&uuml;rde man im Beispiel der Kunden und Bestellungen gegebenenfalls auch historische Daten l&ouml;schen, die vielleicht noch f&uuml;r Auswertungen oder f&uuml;r steuerliche Zwecke ben&ouml;tigt werden. <\/p>\n<p>Auch wenn nicht auszuschlie&szlig;en ist, dass einmal ein Kundendatensatz mit einer Bestellung gel&ouml;scht werden soll, weil die Bestellung die einzige Bestellung dieses Kunden ist und diese sogar noch storniert wurde.<\/p>\n<p>Sinnvoller w&auml;re allerdings, hier nicht die L&ouml;schweitergabe zu nutzen, sondern den Benutzer zuvor explizit zu fragen, ob der Kunde tats&auml;chlich gel&ouml;scht werden soll, und dabei auf noch vorhandene Bestellungen hinzuweisen. Dann k&ouml;nnte man anschlie&szlig;end per VBA zuerst die verkn&uuml;pften Datens&auml;tze aus der Bestellungstabelle l&ouml;schen und erst dann den Kunden.<\/p>\n<p>Grunds&auml;tzlich ist hier anzuraten, beim L&ouml;schen solcher Daten die Datens&auml;tze nicht wirklich zu l&ouml;schen, sondern diese nur als gel&ouml;scht zu markieren, gegebenenfalls mit L&ouml;schdatum und ausf&uuml;hrendem Benutzer, und diese dann in Formularen und Berichten nicht mehr unter den aktiven Daten anzuzeigen.<\/p>\n<h2>Inkonsistente Daten finden, die referenzielle Integrit&auml;t verhindern<\/h2>\n<p>Weiter oben haben wir die Fehlermeldung erl&auml;utert, die auftritt, wenn wir versuchen, referenzielle Integrit&auml;t f&uuml;r inkonsistente Daten festzulegen.<\/p>\n<p>Das bedeutet in unserem Beispiel, dass die Tabelle <b>tblBestellpositionen <\/b>Datens&auml;tze enth&auml;lt, deren Fremdschl&uuml;sselwert nicht im Prim&auml;rschl&uuml;sselfeld der Tabelle <b>tblBestellungen <\/b>enthalten ist. Wir haben dazu noch einmal die referenzielle Integrit&auml;t aus der Beziehung entfernt und zwei inkonsistente Datens&auml;tze zur Tabelle <b>tblBestellpositionen <\/b>hinzugef&uuml;gt, wobei der mit dem Fremdschl&uuml;sselfeldwert <b>12 <\/b>tats&auml;chlich ein Problem ausl&ouml;st und dere andere mit dem Wert <b>NULL <\/b>lediglich keinen Datensatz der Tabelle <b>tblBestellungen <\/b>referenziert (siehe Bild 11). Dieser verhindert zwar nicht das Anlegen der Beziehung mit referenzieller Integrit&auml;t, aber auch diesen Datensatz wollen wir direkt identifizieren.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_011.png\" alt=\"Tabelle mit teilweise inkonsistenten Werten\" width=\"299,5588\" height=\"194,5081\"\/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 11: Tabelle mit teilweise inkonsistenten Werten<\/span><\/b><\/p>\n<p>Dazu legen wir eine neue Abfrage an und f&uuml;gen die Tabelle <b>tblBestellpositionen <\/b>hinzu. Wir ziehen alle Felder in das Entwurfsraster und stellen f&uuml;r das Fremdschl&uuml;sselfeld <b>BestellpositionID <\/b>zwei mit <b>Oder <\/b>verkn&uuml;pfte Kriterien ein. Das erste Kriterium lautet:<\/p>\n<pre>Nicht In (SELECT BestellungID FROM tblBestellungen)<\/pre>\n<p>Dies liefert alle Datens&auml;tze, die einen Wert im Feld <b>BestellungID <\/b>enthalten, der nicht im Prim&auml;rschl&uuml;sselfeld <b>BestellungID <\/b>der Tabelle <b>tblBestellungen <\/b>vorhanden ist.<\/p>\n<p>Das zweite Kriterium liefert alle Datens&auml;tze, die im Feld <b>BestellungID <\/b>den Wert <b>NULL <\/b>enthalten, oder bei denen dieses Feld leer ist (siehe Bild 12).<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_012.png\" alt=\"Bestellpositionen ohne Bestellung finden\" width=\"599,559\" height=\"368,381\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 12: Bestellpositionen ohne Bestellung finden<\/span><\/b><\/p>\n<p>Wechseln wir in die Datenblattansicht, erhalten wir das Ergebnis aus Bild 13. Hier sehen wir genau die beiden Datens&auml;tze, die keinen im Prim&auml;rschl&uuml;sselfeld der Tabelle <b>tblBestellungen <\/b>vorhandenen Wert enthalten oder deren Wert im Feld <b>BestellungID NULL <\/b>ist.<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_013.png\" alt=\"Datens&auml;tze mit inkonsistenten Werten\" width=\"424,5589\" height=\"165,425\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 13: Datens&auml;tze mit inkonsistenten Werten<\/span><\/b><\/p>\n<p>Wie wir mit diesen Datens&auml;tzen umgehen, obliegt der Sensibilit&auml;t der Daten. Wenn es sich um Daten versehentlich gel&ouml;schter Bestellungen handelt, sollte man versuchen, diese mit Backups, die gegebenenfalls noch die Bestelldatens&auml;tze enthalten, zu rekonstruieren.<\/p>\n<p>Wenn wir schnell weiterkommen wollen, k&ouml;nnen wir solche Datens&auml;tze auch zun&auml;chst in einer Archivtabelle speichern und diese aus der Originaltabelle l&ouml;schen, um anschlie&szlig;end eine Beziehung mit referenzieller Integrit&auml;t anlegen zu k&ouml;nnen. Die nicht zuzuordnenden Datens&auml;tze kann man dann sp&auml;ter noch bearbeiten.<\/p>\n<p>Um dies schnell zu erledigen, k&ouml;nnen wir eine Tabellenerstellungsabfrage nutzen. Dazu erstellen wir eine neue Abfrage und w&auml;hlen als Abfragetyp <b>Tabelle erstellen <\/b>aus. Im nachfolgenden Dialog geben wir den Namen der zu erstellenden Tabelle ein, zum Beispiel <b>tblBestellpositionenOhneTabelle<\/b>.<\/p>\n<p>Anschlie&szlig;end f&uuml;gen wir die Tabelle <b>tblBestellpositionen <\/b>hinzu, ziehen alle Felder der Tabelle in das Entwurfsraster und legen f&uuml;r das Feld <b>Bestellposition <\/b>ein Kriterium fest, das alle Datens&auml;tze ausw&auml;hlt, die wir mit der zuvor erstellten Abfrage ermittelt haben:<\/p>\n<pre>In (SELECT BestellpositionID FROM [qryBestellpositionenOhneBestellung])<\/pre>\n<p>Den resultierenden Abfrageentwurf k&ouml;nnen wir Bild 14 entnehmen. Sie erstellt eine neue Tabelle, die alle betroffenen Datens&auml;tze enth&auml;lt. Anschlie&szlig;end l&ouml;schen wir alle inkonsistenten Datens&auml;tze mit der folgenden Abfrage aus der Originaltabelle:<\/p>\n<p class=\"image\"><img decoding=\"async\" src=\"..\/fileadmin\/_temp_\/2026_01\/pic_1586_014.png\" alt=\"Tabellenerstellungsabfrage f&uuml;r inkonsistente Datens&auml;tze der Tabelle tblBestellpositionen\" width=\"649,559\" height=\"300,8024\" \/><\/p>\n<p><b><span style=\"color:darkgrey;\">Bild 14: Tabellenerstellungsabfrage f&uuml;r inkonsistente Datens&auml;tze der Tabelle tblBestellpositionen<\/span><\/b><\/p>\n<pre>DELETE FROM tblBestellpositionen WHERE BestellpositionID IN (SELECT BestellpositionID FROM [qryBestellpositionenOhneBestellung])<\/pre>\n<p>Damit haben wir die inkonsistenten Datens&auml;tze gesichert und k&ouml;nnen nun eine Beziehung mit referenzieller Integrit&auml;t hinzuf&uuml;gen.<\/p>\n<h2>Zusammenfassung und Ausblick<\/h2>\n<p>Dieser Beitrag zeigt, wie inkonsistente Daten das Anlegen von Beziehungen mit referenzieller Integrit&auml;t verhindern und welche Ursachen und Folgen das haben kann.<\/p>\n<p>Au&szlig;erdem erfahren Sie, wie Sie solche Daten identifizieren und bereinigen, um anschlie&szlig;end durch Anlegen einer entsprechenden Beziehung das Erzeugen weiterer Inkonsistenzen zu vermeiden.<\/p>\n<h2>Downloads zu diesem Beitrag<\/h2>\n<p>Enthaltene Beispieldateien:<\/p>\n<p>WarumBeziehungenMitReferenziellerIntritaetDefinieren.accdb<\/p>\n<p><a href=\"..\/fileadmin\/beispiele\/5C633765-419B-4244-87AD-1A19AE3C84D6\/aiu_1586.zip\">Download<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In unseren Access-Audits mit unseren Kunden treffen wir immer wieder auf das folgende Problem: Es gibt Tabellen, die zwar &uuml;ber ein Feld Datens&auml;tze aus anderen Tabellen referenzieren, aber es wurde gar keine Beziehung f&uuml;r diese Zuordnung definiert. Und wenn eine Beziehung angelegt wurde, wurde f&uuml;r diese keine referenzielle Integrit&auml;t festgelegt. Das birgt verschiedene Gefahren, die unter Umst&auml;nden sogar Auswirkungen auf den Unternehmensumsatz haben. Welche das sind und wie Sie diese Probleme beheben, zeigen wir in diesem Beitrag. Die Definition von Beziehungen mit referenzieller Integrit&auml;t ist essenziell und sollte, wenn diese noch nicht vorhanden sind, schnellstens nachger&uuml;stet werden. Das funktioniert in vielen F&auml;llen aber gar nicht so leicht, weil die Tabellen bereits inkonsistente Daten enthalten. Auch zur Identifizierung und Korrektur solcher Datens&auml;tze liefert dieser Beitrag die passenden L&ouml;sungen.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[66012026,662026,44000021],"tags":[],"class_list":["post-55001586","post","type-post","status-publish","format-standard","hentry","category-66012026","category-662026","category-Tabellen_und_Datenmodellierung"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.9 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Warum Beziehungen mit referenzieller Integrit&auml;t? - Access im Unternehmen<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Warum Beziehungen mit referenzieller Integrit&auml;t?\" \/>\n<meta property=\"og:description\" content=\"In unseren Access-Audits mit unseren Kunden treffen wir immer wieder auf das folgende Problem: Es gibt Tabellen, die zwar &uuml;ber ein Feld Datens&auml;tze aus anderen Tabellen referenzieren, aber es wurde gar keine Beziehung f&uuml;r diese Zuordnung definiert. Und wenn eine Beziehung angelegt wurde, wurde f&uuml;r diese keine referenzielle Integrit&auml;t festgelegt. Das birgt verschiedene Gefahren, die unter Umst&auml;nden sogar Auswirkungen auf den Unternehmensumsatz haben. Welche das sind und wie Sie diese Probleme beheben, zeigen wir in diesem Beitrag. Die Definition von Beziehungen mit referenzieller Integrit&auml;t ist essenziell und sollte, wenn diese noch nicht vorhanden sind, schnellstens nachger&uuml;stet werden. Das funktioniert in vielen F&auml;llen aber gar nicht so leicht, weil die Tabellen bereits inkonsistente Daten enthalten. Auch zur Identifizierung und Korrektur solcher Datens&auml;tze liefert dieser Beitrag die passenden L&ouml;sungen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/\" \/>\n<meta property=\"og:site_name\" content=\"Access im Unternehmen\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-06T13:37:05+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4\" \/>\n<meta name=\"author\" content=\"Andr\u00e9 Minhorst\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andr\u00e9 Minhorst\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"15\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/\"},\"author\":{\"name\":\"Andr\u00e9 Minhorst\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\"},\"headline\":\"Warum Beziehungen mit referenzieller Integrit&auml;t?\",\"datePublished\":\"2026-02-06T13:37:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/\"},\"wordCount\":2941,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/788b8a75e4f4460785522cd85a9f73d4\",\"articleSection\":[\"1\\\/2026\",\"2026\",\"Tabellen und Datenmodellierung\"],\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/\",\"name\":\"Warum Beziehungen mit referenzieller Integrit&auml;t? - Access im Unternehmen\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/788b8a75e4f4460785522cd85a9f73d4\",\"datePublished\":\"2026-02-06T13:37:05+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#primaryimage\",\"url\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/788b8a75e4f4460785522cd85a9f73d4\",\"contentUrl\":\"http:\\\/\\\/vg01.met.vgwort.de\\\/na\\\/788b8a75e4f4460785522cd85a9f73d4\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/Warum_Beziehungen_mit_referenzieller_Integritaet\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Warum Beziehungen mit referenzieller Integrit&auml;t?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#website\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"name\":\"Access im Unternehmen\",\"description\":\"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access\",\"publisher\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/access-im-unternehmen.de\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"de\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#organization\",\"name\":\"Andr\u00e9 Minhorst Verlag\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"contentUrl\":\"https:\\\/\\\/access-im-unternehmen.de\\\/wp-content\\\/uploads\\\/2019\\\/09\\\/aiu_wp.png\",\"width\":370,\"height\":111,\"caption\":\"Andr\u00e9 Minhorst Verlag\"},\"image\":{\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/access-im-unternehmen.de\\\/#\\\/schema\\\/person\\\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Warum Beziehungen mit referenzieller Integrit&auml;t? - Access im Unternehmen","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/","og_locale":"de_DE","og_type":"article","og_title":"Warum Beziehungen mit referenzieller Integrit&auml;t?","og_description":"In unseren Access-Audits mit unseren Kunden treffen wir immer wieder auf das folgende Problem: Es gibt Tabellen, die zwar &uuml;ber ein Feld Datens&auml;tze aus anderen Tabellen referenzieren, aber es wurde gar keine Beziehung f&uuml;r diese Zuordnung definiert. Und wenn eine Beziehung angelegt wurde, wurde f&uuml;r diese keine referenzielle Integrit&auml;t festgelegt. Das birgt verschiedene Gefahren, die unter Umst&auml;nden sogar Auswirkungen auf den Unternehmensumsatz haben. Welche das sind und wie Sie diese Probleme beheben, zeigen wir in diesem Beitrag. Die Definition von Beziehungen mit referenzieller Integrit&auml;t ist essenziell und sollte, wenn diese noch nicht vorhanden sind, schnellstens nachger&uuml;stet werden. Das funktioniert in vielen F&auml;llen aber gar nicht so leicht, weil die Tabellen bereits inkonsistente Daten enthalten. Auch zur Identifizierung und Korrektur solcher Datens&auml;tze liefert dieser Beitrag die passenden L&ouml;sungen.","og_url":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/","og_site_name":"Access im Unternehmen","article_published_time":"2026-02-06T13:37:05+00:00","og_image":[{"url":"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4","type":"","width":"","height":""}],"author":"Andr\u00e9 Minhorst","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Andr\u00e9 Minhorst","Gesch\u00e4tzte Lesezeit":"15\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#article","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/"},"author":{"name":"Andr\u00e9 Minhorst","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f"},"headline":"Warum Beziehungen mit referenzieller Integrit&auml;t?","datePublished":"2026-02-06T13:37:05+00:00","mainEntityOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/"},"wordCount":2941,"commentCount":0,"publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#primaryimage"},"thumbnailUrl":"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4","articleSection":["1\/2026","2026","Tabellen und Datenmodellierung"],"inLanguage":"de","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/","url":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/","name":"Warum Beziehungen mit referenzieller Integrit&auml;t? - Access im Unternehmen","isPartOf":{"@id":"https:\/\/access-im-unternehmen.de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#primaryimage"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#primaryimage"},"thumbnailUrl":"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4","datePublished":"2026-02-06T13:37:05+00:00","breadcrumb":{"@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#primaryimage","url":"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4","contentUrl":"http:\/\/vg01.met.vgwort.de\/na\/788b8a75e4f4460785522cd85a9f73d4"},{"@type":"BreadcrumbList","@id":"https:\/\/access-im-unternehmen.de\/Warum_Beziehungen_mit_referenzieller_Integritaet\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/access-im-unternehmen.de\/"},{"@type":"ListItem","position":2,"name":"Warum Beziehungen mit referenzieller Integrit&auml;t?"}]},{"@type":"WebSite","@id":"https:\/\/access-im-unternehmen.de\/#website","url":"https:\/\/access-im-unternehmen.de\/","name":"Access im Unternehmen","description":"Das Magazin f\u00fcr Datenbankentwickler auf Basis von Microsoft Access","publisher":{"@id":"https:\/\/access-im-unternehmen.de\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/access-im-unternehmen.de\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"de"},{"@type":"Organization","@id":"https:\/\/access-im-unternehmen.de\/#organization","name":"Andr\u00e9 Minhorst Verlag","url":"https:\/\/access-im-unternehmen.de\/","logo":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/","url":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","contentUrl":"https:\/\/access-im-unternehmen.de\/wp-content\/uploads\/2019\/09\/aiu_wp.png","width":370,"height":111,"caption":"Andr\u00e9 Minhorst Verlag"},"image":{"@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/access-im-unternehmen.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f","name":"Andr\u00e9 Minhorst","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g","caption":"Andr\u00e9 Minhorst"}}]}},"_links":{"self":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001586","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/comments?post=55001586"}],"version-history":[{"count":0,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/posts\/55001586\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/media?parent=55001586"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/categories?post=55001586"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-im-unternehmen.de\/data\/wp\/v2\/tags?post=55001586"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}