Datenbanken – Databases

Kurz einige Sätze zu Datenbanken.

Datenbanken sind das Gedächtnis des IT-Business, heute vor allem des Internet. Ohne Gedächtnis ist dem Menschen Denken unmöglich – man könnte sich nicht an die Worte erinnern, die man sprechen will. Denken und Erinnerung sind eins.

Und so sind Datenbanken auch das Kernstück künstlicher Intelligenz und jeder fortschrittlichen IT dieser Tage.

Facebook, Google, Amazon, ebenso wie jede Bloggingwebseite, oder auch jedes Kassensystem in einem Restaurant, ist im Kern eine Datenbank. Neben der Datenbank benötigt man natürlich noch Befehle, die Daten aus der Datenbank auslesen, verbinden, verändern, anzeigen, und so weiter. Aber der Kern des Ganzen ist die Datenbank.

Eine Datenbank ist ein Aufbewahrungssystem für strukturierte Daten. Man stelle sich eine Datenbank, speziell eine Access-Datenbank, als eine Sammlung von Tabellen vor. Diese Tabellen sind oft miteinander verknüpft, weil nur so der Zweck erreicht werden kann, den man mit der Datenbank verfolgt. Zum Beispiel würde bei einer Kundendatenbank die Tabelle KUNDEN mit der Tabelle TELEFONNUMMERN verknüpft werden. Während in der Tabelle KUNDEN für jeden Kunden ein Datensatz existiert, können in der Tabelle TELEFONNUMMERN gar kein Datensatz, oder sehr viele Datensätze je Kunde angelegt sein, je nachdem unter wie vielen Rufnummern ein Kunde erreichbar ist.

Weil sich eine Tabelle auf die andere bezieht, weil eine Tabelle von der anderen abhängt und sie einander in relativen Positionen verbunden sind, spricht man von einer relationalen Datenbank. Man bedenke: die Tabelle  TELEFONNUMMERN würde ohne die Tabelle KUNDEN keinen Sinn machen (wen rufe ich an?).

Verbunden werden die Tabellen über eindeutige Nummern, sogenannte „ID“s.

Es gibt auch noch andere Datenbankmodelle als relationale Datenbanken, zum Beispiel neuerdings Blockchain … aber am weitesten verbreitet und oft auch am effektivsten ist die relationale Datenbank.

Anlegen und Pflegen von Daten

Eine Datenbank muss sorgfältig strukturiert und geplant werden. Man möchte Redundanzen (Doppelerfassungen) von Daten vermeiden, man möchte beste Voraussetzungen für eine umfangreiche Auswertung schaffen, etc. pp..

In bestehenden Datenbanken kommt es immer wieder vor, dass Daten umstrukturiert werden müssen. Zum Beispiel kann es sein, dass Postleitzahl und Ort eines Kunden gemeinsam erfasst wurden, und man möchte diese Angaben trennen. Oder man hat zuerst die Kundenadressen und Telefonnummern in einer Tabelle gespeichert, und möchte das nun trennen.

Oder man hat eine größere Anzahl von vielleicht zigtausend Datensätzen zu verändern, indem bestimmte Angaben in jedem Datensatz ersetzt werden durch andere, oder anderweitig modifiziert.

Für diese Arbeiten braucht es Erfahrung, denn einerseits möchte man seine Daten vor allem nicht verlieren, andererseits will man sich keine zusätzlichen Probleme schaffen, indem man unvorbereitet feststellt, dass nach einer Daten-Neustrukturierung Formulare oder Abfragen nicht mehr funktionieren.

Eine weitere wichtige Aufgabe für jede Datenbank ist die Ausgabe von Daten – die Abfrage von Daten. Bei Google stelle man sich das so vor, dass man eine Frage in den Webbrowser eingibt, und durch einen Algorithmus werden der Datenbank, die physisch in den USA beheimatet ist, die relevanten Daten entnommen und im Browser angezeigt. Bei Access-Datenbanken ist es im Grunde dasselbe – Daten werden abgefragt und in Formularen, Tabellen oder Berichten angezeigt.

die wichtigsten Elemente einer Access-Datenbank

„Tabellen“ sind die Rohform der Datenanzeige, man kann hier die Daten übersichtlich zeilenweise sehen und auch ändern.

In „Formularen“ werden die Daten übersichtlich und zum Zwecke der Eingabe/Änderung/Löschung angezeigt. Formulare sind, wie der Name schon sagt, eine Art graphische Anzeige für die Daten aus Tabellen, mit sehr weitgehenden Freiheiten bzgl des Designs.

„Berichte“ sind zum Anzeigen (nicht zum Ändern) von Daten gedacht. Beispielsweise kann man Berichte verwenden um Rechnungen zu erstellen.

„Abfragen“ verbinden Tabellen, berechnen die Daten aus Feldern (addieren, subtrahieren, Prozentberechnungen etc.), und geben diese Daten wiederum als Tabelle aus. „Abfragen“ dienen als Grundlage für Berichte und ggf. auch Formulare. Mit Abfragen kann man große Datenmengen in kurzer Zeit anpassen.

„Module“ sind die Code-Container einer Access Datenbank. Hier hinein schreibt der Programmierer die Funktionen und Objekte seines Codes … beispielsweise wenn erreicht werden soll, dass sich auf einen Tastendruck des Anwenders hin ein Formular öffnen soll etc..