======Was ist ein Datenbanksystem?====== Datenbanken spielen in allen Bereichen der Informatik eine sehr große Rolle. So sind z.B. die Nutzerdaten von sozialen Netzwerken (Facebook, Instagramm) oder Onlineshops (Amazon, Zalando) in Datenbanken organisiert. Eine Datenbank sorgt nun dafür, dass diese Daten geschickt verwaltet werden, und dass man jederzeit Überblick über die verwalteten Daten hat. {{ youtube>O2AIbuNOTDo?Large }} \\ =====Definition===== "Ein **Datenbanksystem** (DBS) (eine **Datenbank**) ist eine systematische und strukturierte Zusammenfassung von Daten eines Problembereiches (Datenbasis) einschließlich der zur Eingabe, Verwaltung, Auswertung und Ausgabe erforderlichen Software (Datenbankmanagementsystem, DBMS)."((Engelmann, Lutz (Hrsg.): Duden Informatik Lehrbuch S II, DUDEN PAETEC GmbH, Berlin 2006, S.153)) =====Aufbau===== Bei einem Datenbanksystem erfolgt eine Trennung von Datenbasis und Datenbankmanagementsystem: {{ :neuerlehrplan:klasse09:dbs.png?400 |}} =====Relationale Datenbanksysteme===== Eine relationale Datenbank ist eine **Sammlung von Tabellen**. Eine Datenbanktabelle besteht aus mehreren Elementen: * einem eindeutigen Namen * einer Reihe von benannten Spalten (Attribute) * einem genau definierten Wertebereich (Datentyp) für jedes Attribut (Zahl, Text, Datum ...) * beliebig viele Zeilen (Datensätze). Jeder Datensatz besitzt Werte in den Attributen. =====Aufbau einer Tabelle===== {{ :neuerlehrplan:klasse09:datenbanktabelle.png?1000 |}} =====Datentypen in einer Datenbank===== **Datentypen** sind dir bereits von Tabellenkalkulationsprogrammen her bekannt. Hier können auch Daten unterschiedlichen Typs (Text, Zahlen, Formeln, Funktionen, Bilder ...) in einer Zelle stehen. Im Datenbanksystemen (hier Sqlite) können die folgenden Datentypen auftreten. Einige Datenbanksysteme enthalten noch mehr Datentypen. * ganze Zahlen → **INTEGER** * Kommazahlen → **REAL** * Zeichenketten → **TEXT** * beliebige binäre Daten → **BLOB** (Binary Large Object) * leeres Datenfeld → **NULL** [[neuerlehrplan:klasse09:begriffe_datenbanken_aufgaben|--> Aufgaben]]