Hauptmenü
HTML und CSS
PHP-Einführung
Algorithmen
Funktionen
Cookies
Datenbanken
Lösungen
Projekte
Sammelsurium
Links
Hilfe
Serverzugang
selfhtml
selfphp
php-Manual
PHP Tutorial
WEB Tutorial
Editoren
Hauptmenü
HTML und CSS
PHP-Einführung
Algorithmen
Funktionen
Cookies
Datenbanken
Lösungen
Projekte
Sammelsurium
Links
Hilfe
Serverzugang
selfhtml
selfphp
php-Manual
PHP Tutorial
WEB Tutorial
Editoren
In einer Datenbank muss jeder Datensatz eindeutig identifizierbar sein. Ein Attribut, anhand dessen man einen Datensatz finden kann, wird in der Datenbanksprache Primärschlüssel genannt. Eine Tabelle darf nie zwei oder mehr Datensätze enthalten, die den gleichen Primärschlüssel haben. Glücklicherweise überwachen Datenbanksysteme automatisch, dass so etwas nicht auftritt – sofern man es ihnen sagt. Wenn man ein oder mehrere Attribute als Primärschlüssel definiert, gibt das Datenbanksystem einen Fehler zurück, sobald man versucht, einen Datensatz einzufügen oder zu verändern, so dass die Eindeutigkeit verletzt würde.
In einer Datenbank bietet es sich häufig an, eine fortlaufende Nummer zu vergeben, die nur innerhalb der Datenbank eine Bedeutung hat (künstlicher Schlüssel oder Surrogatschlüssel). Die Option „auto_increment“ sorgt dafür, dass ein neu hinzugefügter Datensatz automatisch die nächste mögliche Nummer bekommt, wenn man keinen Wert für den Primärschlüssel einträgt.
Um eine 1:N-Beziehung zwischen zwei Tabellen in einer Datenbank zu modellieren, wird die Tabelle auf der „N-Seite“ der Beziehung (in unserem Beispiel die Schüler) um eine Spalte erweitert, in die man den Primärschlüssel des Objekts einträgt, zu dem die Beziehung besteht (im Beispiel die Nummer des Klassenlehrers). Wenn der Primärschlüssel einer Tabelle in einer anderen Tabelle verwendet wird, so ist dies ein sogenannter Fremdschlüssel. Es ist natürlich einfacher, wenn man die Beziehung auf der Seite speichert, wo mehrere Entitäten möglich sind. Jeder Schüler muss sich nur eine Information merken, was einfacher zu verwalten ist, als wenn jeder Lehrer sich alle seine Schüler merken müsste.
schueler | |||||||
---|---|---|---|---|---|---|---|
SNummer | SNachname | SVorname | SGeburtsdatum | SGeschlecht | SKlasse | Se-M@il | KLNummer |
1 | Fischer | Fritz | 06.04.1993 | m | 10a | fritzle@gmx.de | 1 |
2 | Müller | Martina | 01.12.1997 | w | 6c | muellerma@web.de | 2 |
3 | Wahnsinn | Heller | 05.12.1994 | w | 9b | hellwa@hotmail.com | 1 |
=> Lektion 3: Zusammenführen der Datensätze mit SQL
=> Übersicht: Datenbanksysteme