Verwaiste Datensätze auffinden

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Unter verwaisten Datensätzen verstehen wir solche Datensätze, die nicht über eine Beziehung mit einem Datensatz der anderen an dieser Beziehung verknüpften Tabelle verknüpft sind. Manchmal sind solche Datensätze harmlos und werden unter Umständen sogar noch gebraucht. Manchmal handelt es sich dabei um Karteileichen, die man lieber entsorgen sollte. Für beide Fälle gibt es die gleiche Technik, um verwaiste Datensätze aufzufinden. Dieser Artikel zeigt, wie Sie Abfragen zum Auffinden verwaister Datensätze erstellen.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 2102_VerwaisteDatensaetze.accdb.

Beispiele für verwaiste Datensätze

Verwaiste Datensätze kann es beispielsweise in Lookup-Tabellen geben, wie bei typischen Beispielen wie tblKategorien, tblAnreden et cetera. Vielleicht haben Sie irgendwann einmal Kategorien, Anreden oder andere Daten in einer solchen Lookup-Tabelle angelegt, die Sie eigentlich gar nicht mehr benötigen. Bevor Sie diese von Hand identifizieren und diese danach einfach löschen, sollten Sie lieber genau prüfen, ob diese Daten noch benötigt werden.

Am Ende hängen doch noch ein paar Daten aus verknüpften Tabellen daran und wenn dann zufällig noch aus irgendwelchen Gründen referentielle Integrität mit Löschweitergabe für diese Tabelle vorgesehen ist, fehlen nicht nur die vermeintlich nicht mehr benötigten Daten aus der Lookup-Tabelle.

Ein anderes Beispiel sind Datensätze wie Kunden, für die niemals eine Bestellung angelegt wurde oder Bestellungen, die keine Bestellpositionen enthalten. Auch solche Daten können Sie gelegentlich aus der Datenbank entfernen, wenn sie nicht mehr benötigt werden. Auf die gleiche Weise können Sie Artikel ermitteln, die von keiner Bestellposition referenziert werden und folglich noch nie bestellt wurden.

Dieser Artikel zeigt, wie Sie prüfen, ob die Datensätze wirklich nicht mehr mit anderen Datensätzen verknüpft sind, bevor Sie diese löschen.

Beispiel: Artikel, die noch nie bestellt wurden

Was benötigen wir für eine Abfrage, die ermitteln soll, welche Artikel noch nie bestellt wurden Als Erstes brauchen wir die Tabelle tblArtikel. Dann benötigen wir eine Tabelle, aus der hervorgeht, ob ein Artikel schon einmal bestellt wurde oder nicht. Direkt aus den Tabellen können wir nur die erste Information ermitteln, also ob ein Artikel bereits einmal bestellt wurde. Diese Tabelle heißt tblBestelldetails: Nur Artikel, die in mindestens einem Datensatz dieser Tabelle über das Fremdschlüsselfeld ArtikelID referenziert wurden, sind schon einmal bestellt worden.

Wenn wir diese beiden Tabellen zum Entwurf einer Abfrage namens qryAlleBestelltenArtikel hinzufügen, die beiden Felder ArtikelID und Artikelname zum Entwurfsraster hinzufügen und dann eine Gruppierung für die beiden Felder vorsehen, haben wir schon einmal das Gegenteil dessen, was wir eigentlich suchen: Dies liefert uns alle Datensätze der Tabelle tblArtikel, die mindestens einmal mit einem Datensatz der Tabelle tblBestelldetails verknüpft sind (siehe Bild 1).

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

Testzugang

eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar