Definition DBS, DBSM und DB
Skizze
- Das Datenbankmanagementsystem (DBMS) ist für die Verwaltung der Datenbank(-en) zuständig.
- Die Datenbank speichert die Informationen in Form von einzelnen Datensätzen ab.
- Ein Datenbanksystem unterstützt die computergestützte Datenverarbeitung von Informationen, die durch eine Datenbankapplikation erzeugt und verarbeitet werden.
Anforderungen/ Funktionen eines DBMS
Die wesentlichen Funktionen von heutigen Datenbankmanagementsystemen sind:
- Speicherung, Überschreibung und Löschung von Daten
- Verwaltung der Metadaten
- Vorkehrungen zur Datensicherheit
- Vorkehrungen zum Datenschutz
- Vorkehrungen zur Datenintegrität
- Ermöglichung des Mehrbenutzerbetriebs durch das Transaktionskonzept
- Optimierung von Abfragen
- Ermöglichung von Triggern und Stored Procedures
- Bereitstellung von Kennzahlen über Technik und Betrieb des DBMS
Systemarchitekturen
- Desktop Datenbanken für einfache Anwendungen (Einbenutzerbetrieb) läuft nur auf einem PC
- Desktop Datenbanken für wenige Benutzer (Mehrbenutzerbetrieb) läuft auf einem externen Medium (Netzwerklaufwerk etc.)
- Client/Server Datenbanken läuft auf einem Server-PC und exklusiven Zugriff auf Datenbankdateien.
SQL Definition
Skizze
bedeutet Structured Query Language und ist eine Datenbanksprache zur Definition von Datenstrukturen in relationalen Datenbanken sowie zum Bearbeiten (Einfügen, Verändern, Löschen) und Abfragen von darauf basierenden Datenbeständen.
Datenbankmodelle
Skizze
Ein Datenbankmodell ist die theoretische Grundlage für eine Datenbank und legt fest, auf welche Art und Weise die Daten im Datenbanksystem gespeichert und bearbeitet werden können.
- Relationale Datenbanken
Der Aufbau besteht ausschließlich aus Tabellen und zwischen diesen Tabellen bestehen mathematisch fundierte Beziehungen. Leicht programmierbar, aber erfordert viel PC-Leistung. - Objektorientierte Datenbanken
können Tabellen enthalte, die weitere Tabellen besitzen, daher komplexer als Relationale Datenbanken und oft höherer Aufwand für seine Programmierer. - Hierarchische Datenbanken
ist die älteste, dafür aber der schnellste, weil sie geringere Redundanzen bildet, da hier eine Monohierarchie genutzt wird (also vom Root zum Knoten). - Netzwerkartige Datenbanken
stehen über ein beliebig aufgebautes Netz, die miteinander in Verbindung stehen. Flexibilität wird dadurch erhöht.
Drei Ebenen der Datenbanken
Skizze
- physische Sicht auf die Daten, die interne Ebene
- logische Gesamtsicht auf die Daten, die konzeptionelle Ebene
- Benutzersichten auf die Daten, die externe Ebene
Phasen des Datenbankentwurfs
Skizze
Kosten-/ Nutzenanalyse: Sammeln und Analysieren der Anforderungen an die neue Datenbank
Konzeptueller Entwurf: Systemunabhängiger Entwurf der Datenbank nach Anwendungsfunktionen
Verteilungsentwurf: Bei verteilten Datenbanken systemunabhängiger Entwurf des verteilten Systems
Logischer Entwurf: Auswahl eines Datenbankmodells und Abbildung des konzeptuellen Entwurfs auf das Datenbankmodell
Datendefinition: Datendefinition, d. h. Codierung und Programmierung mithilfe eines DBMS, Definition der Benutzersichten
Phsischer Entwurf: Definition der Zugriffstrukturen im physischen Entwurf
Implementierung und Wartung: Installation der Datenbank-Anwendung, Anpassung, Testphase
Übungsaufgabe
Relationale Datenbanken Grundbegriffe
Skizze
- Tabellen Grundbegriffe
- Zelle, Spalte, Zeile, Zeile = Datensatz, Primärschlüssel
- Schlüssel und Beziehungen ( Seite 19-20, 1.2 )
Übungsaufgabe
SQL ( DDL, DML, DCL ) Befehlsgruppen
Skizze
Wichtige Grundbefehle:
|
CREATE TABLE tabellenname ( attribute1, attribute2, … ); |
Erstellt eine Tabelle mit attributen |
|
-- Dies ist ein Kommentar |
Schreibweise von Kommentaren |
|
ALTER TABLE tabellenname ADD DROP CHANGE |
Tabelle verändern |
|
DROP TABLE tabelle; |
Löscht Tabelle |
|
CREATE DROP ALTER TRUNCATE |
DDL Anweisungen
|
|
INSERT DELETE UPDATE SELECT |
DML Anweisungen |
|
SELECT * FROM Kunden \G; |
Vertikale Ansicht |
|
SELECT Vorname AS Firstname, Nachname AS Lastname, telefon AS Phone FROM Kunden; |
Ausgewählte Datensätze unter geänderten Tabellenkopf anzeigen lassen |
|
DELETE FROM Kunden WHERE knr = 2; |
Lösche von Tabelle wenn Bedingung Wahr Delete löscht immer ganze Zeilen In diesem Fall löscht man sogar die Komplette zweite Zeile sodass sie nichtmehr belegt werden kann |
|
INSERT INTO Kunden (Vorname, Nachname, Strasse, PLZ, Telefon) VALUES ('Ender', 'Apaydin', 'Mohrenstr. 8a', '10117', '0900222222'), ('Scott', 'Bärbock', 'Möllendorffstr. 52', '10367','03012341'); |
Insert Beispiel |
|
UPDATE Kunden SET Nachname = 'Lehmann', Vorname = 'Kevin' WHERE KNr = 3; |
Update Beispiel |