Registrierte Abonnenten finden an dieser Stelle den Download der kompletten Ausgabe im PDF-Format und die Beispieldateien.
Referentielle Integrität
Der große Vorteil von Datenbanken gegenüber reinen Tabellenkalkulationen wie Excel ist, dass Sie in Datenbanken Beziehungen zwischen den Feldern zweier Tabellen herstellen können. Das heißt, dass ein Feld einer Tabelle das an der Beziehung beteiligte Primärschlüsselfeld enthält und die andere Tabelle ein Fremdschlüsselfeld beisteuert, mit dem ein Primärschlüsselwert aus der ersten Tabelle ausgewählt werden kann – sodass die Datensätze dieser Tabelle verknüpft werden können. Das geht grundsätzlich auch ohne das Definieren von Beziehungen. Beziehungen steuern aber noch ein entscheidendes Feature bei: die referentielle Integrität. Damit können Sie beispielsweise sicherstellen, dass das Fremdschlüsselfeld auch nur Werte aufnimmt, die im Primärschlüsselfeld der verknüpften Tabelle enthalten sind. Wie das geht und was Sie mit der Festlegung referentieller Integrität noch erreichen können, lernen Sie in diesem Artikel.
Duplikate finden per Abfrage
Wenn man lange genug mit einer Datenbank arbeitet, legt man früher oder später einen Datensatz mit redundanten Daten an. Ob es sich um einen Kunden handelt, der zum zweiten Mal in der Kunden-Tabelle erscheint oder um eine Kategorie in der Kategorientabelle – schützen können Sie sich davor nur durch das Festlegen entsprechender eindeutiger Indizes. Diese sorgen für die Meldung eines Fehlers, wenn jenand versucht, das oder die betroffenen Felder eines neuen Datensatzes mit bereits vorhandenen Daten zu füllen. Manchmal vergisst man das jedoch. Dann lautet die Aufgabe: Duplikate finden! Wie das gelingt, zeigt der vorliegende Artikel.
Löschweitergabe in der Praxis
Die Löschweitergabe ist eines der Features der referentiellen Integrität. Bei aktivierter referentieller Integrität bewirkt die Löschweitergabe immer etwas, unabhängig davon, ob Sie die Löschweitergabe aktiviert haben oder nicht. Wenn Sie diese aktiviert haben, löscht sie die mit dem zu löschenden Datensatz verknüpften Datensätze ebenfalls. Wenn Sie sie deaktiviert haben, sorgt sie dafür, dass bereits mit anderen Datensätzen verknüpfte Datensätze nicht mehr gelöscht werden können. In diesem Artikel schauen wir uns das im Detail an und erläutern anhand von Beispielen, wann Sie die Löschweitergabe aktivieren sollten und wann nicht.
Inkonsistente Verknüpfungen finden
Inkonsistenzen in einem Datenbestand können an verschiedenen Stellen entstehen. Die eine sind Inkonsistenzen, die in Folge von Duplikaten auftreten – also wenn Sie beispielsweise eine Kategorie in zwei verschiedenen Schreibweisen anlegen. Andere Inkonsistenzen treten bei verknüpften Daten zwischen zwei Tabellen auf, deren Beziehung nicht mit referentieller Integrität definiert ist. Hier kann es sein, dass das Fremdschlüsselfeld Werte enthält, die gar nicht im Primärschlüsselfeld der verknüpften Tabelle auftauchen. Dieser Artikel zeigt, wie Sie solche Inkonsistenzen im Datenbestand aufdecken.
Verwaiste Datensätze auffinden
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.
Verknüpfte Daten löschen bei referentieller Integrität
Wenn Sie die Beziehung zweier Tabellen mit referentieller Integrität definiert haben und dabei die Löschweitergabe nicht aktiviert ist, können Sie Daten aus der Tabelle mit dem an der Beziehung beteiligten Primärschlüsselfeld nicht ohne weiteres löschen. Manchmal ist das aber dennoch erwünscht – beispielsweise, wenn die Daten zuvor in ein Archiv übertragen wurden. Wie Sie die Daten dann löschen, stellen wir in diesem Artikel vor.