Begriffe
Datenbank
Eine Datenbank ist immer dann sinnvoll, wenn größere Mengen an Daten über längere Zeit gespeichert werden sollen.
Lebensdauer
Wenn alle Informationen in Variablen gespeichert werden, spricht man von einer transienten Datenhaltung. Ein dauerhaftes Speichern über das Programmende hinaus wird als Persistent bezeichnet.
Eine Datenbank ist charakterisiert durch verschieden Eigenschaften
- Zusammengehörende Daten
- Dauerhafte Verfügbarkeit
- Integration
- Mehrfachbenutzbar
- Datenintegrität
- Sicherheit
Simples Speichern in Dateien führt bei Gleichzeitigem Zugriff von mehreren Benutzern oder Programmen leicht zu Problemen.
Ebenfalls ist bei der manuellen Verwaltung von Redundanzen die Gefahr für Inkonsistente Zustände groß.
DBMS
Ein Datenbank-Management-System nimmt diese Aufgaben ab. Es bildet eine Zwischenschicht zwischen gespeicherten Dateien und Anwendern ab.

Ein DBMS ist eine Software zur Verwaltung einer Datenbank. Sie nimmt dabei die Verantwortung über die Verteilung von Zugriffsrechten, Datensicherung und Mehrbenutzerfähigkeit. Außerdem ist es für die Sicherung der Konsistenz und Transaktionen zuständig.
Insgesamt ist es für die folgenden Funktionen zuständig:
- Datenverwaltung
- Katalog (Metadaten)
- Concurrency Control
- Transaktionen
- Recovery
- Verwaltung von Zugriffsrechten
- Kommunikationsunterstützung
- Integritätsunterstützung
- Datenunabhängigkeit
Definition Datenunabhängigkeit
Beschreibt die Trennung von Datenstruktur und Anwendungsprogramm.
So können die Speicherstrukturen angepasst werden, ohne dass die darauf basierenden Anwendungen verändert werden müssen.
Elementarste Funktion ist dabei das Speichern, Lesen, Ändern und Löschen von Daten. Dem Benutzer sollen hier die Implementierungen verborgen bleiben.
Informationssystem
Ist ein Werkzeug zur Erfassung und Verwaltung von Informationen. Es beinhaltet alle Elemente die zur Verwendung benötigt werden.
Dies sind allgemein:
- Die Daten
- Datenbank / DBMS Software
- Die Hardware
- Personen, die die Daten benutzen und Verwalten
Schema & Instanz
Ähnlich wie bei Klassen und Objekten aus der Objektorientieren Programmierung wird auch bei Datenbanken zwischen Istanzen (Objekten) und Schemen (Klassen) unterschieden. Die Instanzen enthalten konkrete Werte die sich mit der Zeit ändern können, während die Schemen starr sind und nur die Art der Daten beschreiben.
Datenmodell
Sind Konzepte zur abstrakten Darstellung eines Ausschnitts der Welt. Diese sogenannte ‘Miniwelt’ spiegelt nur einige Ausgewählte Eigenschaften wieder.
Sie kann Strukturen, Operatoren, Abfragen und Constraints enthalten.
Beispiele
- Struktur
Eine Abteilung hat Mitarbeiter - Operation
Ändere die Adresse des Mitarbeiters mit Personalnummer 12 - Abfrage
Welche Mitarbeiter gehören zu Abteilung 3 - Constraint
Das Alter eines Mitarbeiters muss immer sein
Datenmodelle werden meist mit UML oder als ER Modell dargestellt.
Aktueller Stand der Technik ist der Einsatz von Relationellen Datenmodellen

Sichten
Eine Relation die in der Datenbank tatsächlich existiert heißt “Basisrelation”.
Sichten sind virtuelle Relationen, die aus beliebigen anderen Sichten oder Basisrelationen abgeleitet werden.
So könne Nutzer nur die jeweils relevanten Daten betrachten
Ebenfalls erleichtern sie den Umgang mit komplexeren Strukturen. Wenn eine Sicht als Grundlage für eine Abfrage verwendet wird, muss der Benutzer sich nicht mit den Verbundoperationen zum Erstellen der Sicht befassen.
