So kommen wir jetzt zur Erläuterung.
Das was wir gerade gemacht haben (Datenbank erzeugen, Tabelle anlegen und Dump setzen) lässt sich selbsredent auch per Kommandozeile, anderer Software oder PHP machen. Allerdings legt man in den seltensten Fällen ja komplette DBs mit PHP an. Vielmehr nutzt man die darin enthaltenen Daten.
Schauen wir uns unseren Dump also mal etwas genauer an:
Die Felder an sich sollten klar sein, es geht um eine kleine Adressverwaltung. Das Feld ID hat aber zwei Besonderheiten. Zum einen die Prozedur "
auto_increment", welche jeden Neueintrag automatisch fortlaufend durchnummeriert, zum anderen ist sie der Primärschlüssel.
Was bedeutet das?
In der Relationenalgebra darf es jedes Tupel (= Datensatz) nur genau einmal geben, sonst wird die DB inkonsistent. Der Sinn des ganzen ist wohl klar. Der "
Primärschlüssel" bezeichnet diejenige Spalte, die diese einmaligen merkmale beinhaltet. Bei der Asuwahl ist also streng darauf zu achten, dass die hierin enthaltenen Werte absolut einmalig sind (Personalausweis-Nummern, etc.). In unserem Beispiel behelfen wir uns mit der fortlaufenden Nummerierung, denn hier gibt es jede Zahl nur ein einziges mal.
Die verwendeten Datentypen sind (genaueres zu allen Typen werde ich später sagen, sonst wird's verwirrend):
- INT (Integer) für ganze relationale Zahlen (die WErte geben die Länge in Bytes an, die reserviert wird, also z.B. fünf für die PLZ)
TEXT für ASCII-Text
@Toxical
Der Typ Text lässt eine variable Anzahl Zeichen zu, während bei CHAR immer exakt die gesetzen Bytes reserviert werden. Die DB kann also sehr schnell sehr gross werden.