{"id":55000656,"date":"2024-06-01T00:00:00","date_gmt":"2024-06-01T00:00:00","guid":{"rendered":"http:\/\/access-basics.de\/656"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-30T00:00:00","slug":"Tabellen_basics_Referenzielle_Integritaet_nachruesten","status":"publish","type":"post","link":"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html","title":{"rendered":"Tabellen [basics]: Referenzielle Integrit&auml;t nachr&uuml;sten"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/vg07.met.vgwort.de\/na\/7a5ecae6979e40d994d9c2ed4c7ac1f2\" width=\"1\" height=\"1\" alt=\"\"><\/p>\n<p class='introduction'>Wenn man Beziehungen zwischen zwei Tabellen erstellt, kann man dies ohne referenzielle Integrit&auml;t erledigen oder auch mit. Wir empfehlen dringend, immer referenzielle Integrit&auml;t zu definieren, au&szlig;er es ist technisch nicht m&ouml;glich &#8211; beispielsweise, weil die Tabellen nicht in der gleichen Datenbank liegen. Manchmal ist das Kind jedoch bereits in den Brunnen gefallen. Der Entwickler hat f&uuml;r die Tabellen nur eine einfache Beziehung ohne referenzielle Integrit&auml;t definiert und die Benutzer haben dies unwissend ausgenutzt: So sind Inkonsistenzen im Datenbestand entstanden, die fr&uuml;her oder sp&auml;ter zu gravierenden Problemen f&uuml;hren k&ouml;nnen. Also zeigen wir in diesem Artikel zun&auml;chst, wie solche Probleme &uuml;berhaupt auftreten k&ouml;nnen und wie wir diese wieder beheben. Und wir schauen uns auch an, welche Rolle Eigenschaften wie Eingabe erforderlich und die L&ouml;schweitergabe in dieser Situation spielen.<\/p>\n<h2>Beispieldatenbank<\/h2>\n<p>Die Beispiele dieses Artikels findest Du in der Datenbank <b>TabellenBasics_ReferenzielleIntegritaetNachruesten.accdb<\/b>.<\/p>\n<h2>Beispieltabellen<\/h2>\n<p>Wir schauen uns das Problem an zwei einfachen Tabellen unserer Beispieldatenbank zur Verwaltung von B&uuml;chern an. In unserer Beispieldatenbank sind diese beiden Tabellen &uuml;ber das Fremdschl&uuml;sselfeld <b>KategorieID <\/b>in der Tabelle <b>tblBuecher <\/b>miteinander verkn&uuml;pft.<\/p>\n<p>Wir haben nat&uuml;rlich ordnungsgem&auml;&szlig; direkt beim Anlegen und vor dem Einf&uuml;gen jeglicher Daten eine Beziehung mit referenzieller Integrit&auml;t definiert (siehe Bild 1).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_001.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_001.png\" alt=\"Formular-Entwurf unseres Beispielformulars\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 1: Formular-Entwurf unseres Beispielformulars<\/p>\n<p>Diese werden wir nun erst einmal entfernen, damit wir nachstellen k&ouml;nnen, welche Probleme bei Verwendung von Beziehungen ohne referenzielle Integrit&auml;t auftreten k&ouml;nnen. Dazu klicken wir doppelt auf den Beziehungspfeil und entfernen aus dem Dialog <b>Beziehungen bearbeiten <\/b>die Option <b>Mit referenzieller Integrit&auml;t<\/b> (siehe Bild 2).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_002.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_002.png\" alt=\"Entfernen der referenziellen Integrit&auml;t\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 2: Entfernen der referenziellen Integrit&auml;t<\/p>\n<p>Danach geschieht erst einmal nichts Besonders &#8211; wir k&ouml;nnen nach wie vor Daten in die beiden Tabellen eingeben und insbesondere &uuml;ber das Fremdschl&uuml;sselfeld <b>KategorieID <\/b>die Kategorien f&uuml;r unsere B&uuml;cher ausw&auml;hlen, da wir f&uuml;r dieses ein Nachschlagefeld definiert haben (siehe Bild 3).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_003.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_003.png\" alt=\"Auswahl von Werten aus der Tabelle tblKategorien\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 3: Auswahl von Werten aus der Tabelle tblKategorien<\/p>\n<h2>Gefahr: Kategorien entfernen<\/h2>\n<p>Wir k&ouml;nnen auch nach wie vor Eintr&auml;ge in der Tabelle <b>tblKategorien <\/b>bearbeiten, also zum Beispiel neue Kategorien hinzuf&uuml;gen. Und nat&uuml;rlich lassen sich auch leicht Kategorien entfernen. Oh! Kategorien entfernen Aber kann das nicht zu Problemen f&uuml;hren Ja, das ist das erste Problem, das wir uns anschauen.<\/p>\n<p>Wir sehen in der Tabelle <b>tblBuecher <\/b>eine Reihe von Eintr&auml;gen, die der Kategorie <b>Fachbuch <\/b>zugeordnet sind. Also stellen wir uns mal vor, ein Mitarbeiter l&ouml;scht diesen Eintrag zuf&auml;llig (siehe Bild 4). Die Warnmeldung aus erscheint auch nur, wenn die entsprechende Einstellung in den Access-Optionen aktiviert ist, aber Warnmeldungen ignoriert man ja gelegentlich auch mal.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_004.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_004.png\" alt=\"Meldung beim L&ouml;schen eines Datensatzes der Tabelle tblKategorien\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 4: Meldung beim L&ouml;schen eines Datensatzes der Tabelle tblKategorien<\/p>\n<h2>B&uuml;cher ohne Kategorie<\/h2>\n<p>&Ouml;ffnen wir nun erneut die Tabelle <b>tblBuecher<\/b>, stellen wir fest, dass f&uuml;r einige B&uuml;cher nun keine Kategorie mehr in der Spalte <b>Kategorie <\/b>angezeigt wird (siehe Bild 5). Stattdessen sehen wir ein leeres Feld. Aber was genau hat das zu bedeuten<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_005.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_005.png\" alt=\"Die B&uuml;cher haben pl&ouml;tzlich keine Kategorie mehr. Oder doch\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 5: Die B&uuml;cher haben pl&ouml;tzlich keine Kategorie mehr. Oder doch<\/p>\n<p>Jedenfalls erscheint die fehlende Kategorie <b>Fachbuch <\/b>nun nicht mehr in der Auswahlliste.<\/p>\n<p>Aber ist das Fremdschl&uuml;sselfeld <b>KategorieID <\/b>nun wirklich leer oder sieht es nur so aus Und wie k&ouml;nnen wir das herausfinden Wenn man etwas versierter ist, kann man dies schnell mit VBA l&ouml;sen. Dazu schreibt man die folgende Anweisung im VBA-Editor in den Direktbereich und bet&auml;tigt die Eingabetaste. Am schnellsten gelangt man dort mit <b>Strg + G <\/b>hin:<\/p>\n<pre>  DLookup(\"KategorieID\", \"tblBuecher\", \"BuchID = 2\")<\/pre>\n<p>Das Ergebnis lautet, wie wir auch in Bild 6sehen, 2. Die Kategorie ist also nach wie vor auf den richtigen Wert f&uuml;r die Kategorie eingestellt, allerdings ist diese nicht mehr in der Tabelle <b>tblKategorien <\/b>vorhanden. Dementsprechend kann das Nachschlagefeld auch keine Kategorie mehr anzeigen denn: Es ist darauf ausgelegt, einen Datensatz aus der Tabelle <b>tblKategorien <\/b>auszulesen, der den Wert <b>2 <\/b>im Feld <b>KategorieID <\/b>hat, und zu diesem Datensatz den Inhalt des Feldes <b>Kategorie <\/b>anzuzeigen. Aber da dieser Datensatz nicht mehr da ist, kann er auch nicht mehr angezeigt werden. Wer kein VBA bem&uuml;hen m&ouml;chte, um sich davon zu &uuml;berzeugen, welcher Wert tats&auml;chlich hinter dem in einem Nachschlagefeld angezeigten Feld steckt, kann auch noch andere Methoden w&auml;hlen:<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_006.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_006.png\" alt=\"Das Feld KategorieID enth&auml;lt einen Wert.\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 6: Das Feld KategorieID enth&auml;lt einen Wert.<\/p>\n<ul>\n<li>Anpassen des Tabellenentwurfs oder<\/li>\n<li>Anzeigen in einer angepassten Abfrage.<\/li>\n<\/ul>\n<p>Die erste Variante greift in den Tabellenentwurf ein, daher sollte man diese normalerweise nicht w&auml;hlen. Dabei &ouml;ffnen wir die Tabelle im Entwurf, zeigen die Eigenschaften f&uuml;r das Nachschlagefeld <b>KategorieID<\/b> an und wechseln dort zum Bereich <b>Nachschlagen<\/b>. Dort stellen wir die Eigenschaft <b>Steuerelement anzeigen <\/b>auf den Wert <b>Textfeld <\/b>ein (siehe Bild 7).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_007.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_007.png\" alt=\"Tempor&auml;res Umwandeln des Nachschlagefeldes in ein herk&ouml;mmliches Tabellenfeld\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 7: Tempor&auml;res Umwandeln des Nachschlagefeldes in ein herk&ouml;mmliches Tabellenfeld<\/p>\n<p>Die Eigenschaften, die Du mit dem Nachschlage-Assistent oder sogar von Hand f&uuml;r das Nachschlagefeld dort eingetragen hast, sind allerdings mit dem Speichern des neuen Entwurfs verloren &#8211; und das Speichern ist erforderlich, sobald Du in die Datenblattansicht wechseln m&ouml;chtest. Mit dem Speichern werden die Eigenschaften f&uuml;r das Nachschlagefeld wieder auf die Standardwerte zur&uuml;ckgesetzt.<\/p>\n<p>Wechseln wir nun in die Datenblattansicht, sehen wir im Feld <b>KategorieID<\/b> die Werte, die darin tats&auml;chlich gespeichert sind (siehe Bild 8) &#8211; in diesem Fall zum Beispiel der Wert <b>2 <\/b>f&uuml;r die Felder, die der Kategorie <b>Fachbuch <\/b>zugeordnet waren.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_008.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_008.png\" alt=\"Anzeige der tats&auml;chlichen Werte im Fremdschl&uuml;sselfeld\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 8: Anzeige der tats&auml;chlichen Werte im Fremdschl&uuml;sselfeld<\/p>\n<p>Wer nicht direkt in den Tabellenentwurf eingreifen m&ouml;chte, kann sich auch eine Abfrage erstellen, die nur die tats&auml;chlich in dem Feld gespeicherten Werte anzeigt. Dazu erstellen wir eine Abfrage, die alle Felder der zu untersuchenden Tabelle enth&auml;lt. Auch hier k&ouml;nnen wir f&uuml;r die Nachschlagefelder die Eigenschaft <b>Steuerelement<\/b> einstellen (siehe Bild 9). In der Datenblattansicht wird auch diese Abfrage nun die tats&auml;chliche Werte des Feldes <b>KategorieID <\/b>liefern.<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_013.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_013.png\" alt=\"Aktivieren der Anzeige als Textfeld\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 9: Aktivieren der Anzeige als Textfeld<\/p>\n<h2>Probleme durch das L&ouml;schen der Kategorie<\/h2>\n<p>Das erste Problem ist bereits offensichtlich zu sehen: Die Kategorien der bisher als Fachbuch kategorisierten B&uuml;cher werden nicht mehr in der Tabelle angezeigt. Aber es geht noch weiter. Stellen wir uns vor, wir wollen eine Liste aller B&uuml;cher f&uuml;r einen Bericht aufbereiten und stellen eine entsprechende Abfrage als Datensatzquelle zusammen.<\/p>\n<p>Dieser wollen wir in der Regel die Inhalte der verkn&uuml;pften Tabellen, die wir im Bericht anzeigen wollen, ebenfalls hinzuf&uuml;gen &#8211; in diesem Fall den Namen der Kategorie und die Beschreibung der Kategorien, die wir zum Beispiel in einem Gruppenkopf f&uuml;r die Kategorie abbilden wollen. Also f&uuml;gen wir der Abfrage neben der Tabelle <b>tblBuecher <\/b>wie in Bild 10 auch noch die Tabelle <b>tblKategorien <\/b>hinzu (die &uuml;brigen Tabellen lassen wir an dieser Stelle aus Gr&uuml;nden der &Uuml;bersicht weg).<\/p>\n<p class=\"image\"><a rel=\"lightbox\" href=\"..\/tl_files\/images\/pic_656_009.png\"><img decoding=\"async\" src=\"..\/tl_files\/images\/pic_656_009.png\" alt=\"Abfrage mit B&uuml;chern und Kategorien\" width=\"325\" \/><\/a><\/p>\n<p class='imagetext'>Bild 10: Abfrage mit B&uuml;chern und Kategorien<\/p>\n<div class=\"rcp_restricted\"><p><span style=\"color: #ff0000;\">M&ouml;chten Sie weiterlesen? Dann l&ouml;sen Sie Ihr Ticket!<\/span><br \/>\n<span style=\"color: #ff0000;\">Hier geht es zur Bestellung des Jahresabonnements des Magazins <strong>Access &#091;basics&#093;<\/strong>:<\/span><br \/>\n<span style=\"color: #ff0000;\"><a style=\"color: #ff0000;\" href=\"https:\/\/shop.minhorst.com\/magazine\/282\/access-basics?c=77\">Zur Bestellung ...<\/a><\/span><br \/>\n<span style=\"color: #ff0000;\">Danach greifen Sie sofort auf <strong>alle rund 400 Artikel<\/strong> unseres Angebots zu - auch auf diesen hier!<\/span><br \/>\n<span style=\"color: #000000;\">Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:<\/span><\/p>\n<\/div>\n\n\t\n\t<form id=\"rcp_login_form\"  class=\"rcp_form\" method=\"POST\" action=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000656\/\">\n\n\t\t\n\t\t<fieldset class=\"rcp_login_data\">\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_login\">Username or Email<\/label>\n\t\t\t\t<input name=\"rcp_user_login\" id=\"rcp_user_login\" class=\"required\" type=\"text\"\/>\n\t\t\t<\/p>\n\t\t\t<p>\n\t\t\t\t<label for=\"rcp_user_pass\">Password<\/label>\n\t\t\t\t<input name=\"rcp_user_pass\" id=\"rcp_user_pass\" class=\"required\" type=\"password\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t\t<p>\n\t\t\t\t<input type=\"checkbox\" name=\"rcp_user_remember\" id=\"rcp_user_remember\" value=\"1\"\/>\n\t\t\t\t<label for=\"rcp_user_remember\">Remember me<\/label>\n\t\t\t<\/p>\n\t\t\t<p class=\"rcp_lost_password\"><a href=\"\/index.php\/data\/wp\/v2\/posts\/55000656?rcp_action=lostpassword\"><\/a><\/p>\n\t\t\t<p>\n\t\t\t\t<input type=\"hidden\" name=\"rcp_action\" value=\"login\"\/>\n\t\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_redirect\" value=\"https:\/\/access-basics.de\/data\/wp\/v2\/posts\/55000656\/\"\/>\n\t\t\t\t\t\t\t\t<input type=\"hidden\" name=\"rcp_login_nonce\" value=\"7c46eb013a\"\/>\n\t\t\t\t<input id=\"rcp_login_submit\" class=\"rcp-button\" type=\"submit\" value=\"Login\"\/>\n\t\t\t<\/p>\n\t\t\t\t\t<\/fieldset>\n\n\t\t\n\t<\/form>\n<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wenn man Beziehungen zwischen zwei Tabellen erstellt, kann man dies ohne referenzielle Integrit&auml;t erledigen oder auch mit. Wir empfehlen dringend, immer referenzielle Integrit&auml;t zu definieren, au&szlig;er es ist technisch nicht m&ouml;glich &#8211; beispielsweise, weil die Tabellen nicht in der gleichen Datenbank liegen. Manchmal ist das Kind jedoch bereits in den Brunnen gefallen. Der Entwickler hat f&uuml;r die Tabellen nur eine einfache Beziehung ohne referenzielle Integrit&auml;t definiert und die Benutzer haben dies unwissend ausgenutzt: So sind Inkonsistenzen im Datenbestand entstanden, die fr&uuml;her oder sp&auml;ter zu gravierenden Problemen f&uuml;hren k&ouml;nnen. Also zeigen wir in diesem Artikel zun&auml;chst, wie solche Probleme &uuml;berhaupt auftreten k&ouml;nnen und wie wir diese wieder beheben. Und wir schauen uns auch an, welche Rolle Eigenschaften wie Eingabe erforderlich und die L&ouml;schweitergabe in dieser Situation spielen.<\/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":[662024,66032024,44000003],"tags":[],"class_list":["post-55000656","post","type-post","status-publish","format-standard","hentry","category-662024","category-66032024","category-Tabellen_entwerfen"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v15.9.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Tabellen [basics]: Referenzielle Integrit&auml;t nachr&uuml;sten - Access [basics]<\/title>\n<link rel=\"canonical\" href=\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tabellen [basics]: Referenzielle Integrit&auml;t nachr&uuml;sten - Access [basics]\" \/>\n<meta property=\"og:description\" content=\"Wenn man Beziehungen zwischen zwei Tabellen erstellt, kann man dies ohne referenzielle Integrit&auml;t erledigen oder auch mit. Wir empfehlen dringend, immer referenzielle Integrit&auml;t zu definieren, au&szlig;er es ist technisch nicht m&ouml;glich - beispielsweise, weil die Tabellen nicht in der gleichen Datenbank liegen. Manchmal ist das Kind jedoch bereits in den Brunnen gefallen. Der Entwickler hat f&uuml;r die Tabellen nur eine einfache Beziehung ohne referenzielle Integrit&auml;t definiert und die Benutzer haben dies unwissend ausgenutzt: So sind Inkonsistenzen im Datenbestand entstanden, die fr&uuml;her oder sp&auml;ter zu gravierenden Problemen f&uuml;hren k&ouml;nnen. Also zeigen wir in diesem Artikel zun&auml;chst, wie solche Probleme &uuml;berhaupt auftreten k&ouml;nnen und wie wir diese wieder beheben. Und wir schauen uns auch an, welche Rolle Eigenschaften wie Eingabe erforderlich und die L&ouml;schweitergabe in dieser Situation spielen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\" \/>\n<meta property=\"og:site_name\" content=\"Access [basics]\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-01T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"-0001-11-30T00:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/vg07.met.vgwort.de\/na\/7a5ecae6979e40d994d9c2ed4c7ac1f2\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Gesch\u00e4tzte Lesezeit\">\n\t<meta name=\"twitter:data1\" content=\"18\u00a0Minuten\">\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/access-basics.de\/#website\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Access [basics]\",\"description\":\"DAS ACCESS-MAGAZIN F\\u00dcR ALLE, DIE VON 0 AUF 100 WOLLEN\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/access-basics.de\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html#primaryimage\",\"inLanguage\":\"de\",\"url\":\"http:\/\/vg07.met.vgwort.de\/na\/7a5ecae6979e40d994d9c2ed4c7ac1f2\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html#webpage\",\"url\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\",\"name\":\"Tabellen [basics]: Referenzielle Integrit&auml;t nachr&uuml;sten - Access [basics]\",\"isPartOf\":{\"@id\":\"https:\/\/access-basics.de\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html#primaryimage\"},\"datePublished\":\"2024-06-01T00:00:00+00:00\",\"dateModified\":\"-0001-11-30T00:00:00+00:00\",\"author\":{\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\"},\"breadcrumb\":{\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/\",\"url\":\"https:\/\/access-basics.de\/\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\",\"url\":\"https:\/\/access-basics.de\/index.php\/Tabellen_basics_Referenzielle_Integritaet_nachruesten.html\",\"name\":\"Tabellen [basics]: Referenzielle Integrit&auml;t nachr&uuml;sten\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/access-basics.de\/#\/schema\/person\/13395c4bcd7d7963efe33be9c584d93f\",\"name\":\"Andr\\u00e9 Minhorst\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/access-basics.de\/#personlogo\",\"inLanguage\":\"de\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1b9d010cf1716692cb9c34f21554e07d17d461acaea5b61b8cb21cbec678d48a?s=96&d=mm&r=g\",\"caption\":\"Andr\\u00e9 Minhorst\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","_links":{"self":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000656","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/comments?post=55000656"}],"version-history":[{"count":0,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/posts\/55000656\/revisions"}],"wp:attachment":[{"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/media?parent=55000656"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/categories?post=55000656"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/access-basics.de\/index.php\/data\/wp\/v2\/tags?post=55000656"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}