|
T u t o r i a l
|
|
MySQL Tutorial > Kapitel 1: Grundlagen
Voraussetzungen:
- PHP 4 oder PHP 5 fähiger WebServer
- MySQL 4.1 oder höher
- phpMyAdmin
Ein Komplettpaket findest Du hier.
Wie funktioniert MySQL?
MySQL ist eine Datenbank. Besser gesagt, ein System, das Datenbanken
verwaltet und überarbeitet.
Folgende Hierarchie gibt es in MySQL:
Datenbank
Tabelle
Spalte
-> Datenbanken kann
es unendlich viele geben. Beinhalten Tabellen.
-> In Tabellen
werden die so genannten Zeilen gespeichert.
-> Eine Tabelle kann
unendlich viele Spalten beinhalten. Spalten könnte man mit den PHP
Variablen gleichsetzen. Man muss jedoch eine feste Typ-Zugehörigkeit zuordnen.
Zum Beispiel kann man einer Spalte vom Typ Integer keinen String einfügen.
-> Eine Zeile (auch
Record genannt) ist in MySQL ein Datensatz, eine Zeile einer Tabelle, die mit
Daten gefüllt ist. Eine Tabelle kann nahezu unendlich viele Zeilen beinhalten
und ist dann trotzdem schnell wenn es darum geht, gezielt eine dieser Zeilen
auszulesen.
Ein gutes Strukturen Beispiel dafür:
MeineWebsite
MeineWebsite_Users
ID (Int) Name (Varchar) Passwort
(Varchar) 1
Manfred blah3h9fg3 2
Birgit 3f3fhfjfj3j3 3 Joseph kufsteinhof99
MeineWebsite_Bestellungen
ID (Int) UserID (Int) ArtikelID (Int) 1 1 233 2 1 233 3
2 19
4 1 233 5
2 25
6
3 152
Legende: Datenbank,
Tabelle,
Spalte,
Typ, Datensatz (Zeile).
Datentypen
Es gibt in MySQL eine große Reihe an verschiedenen Datentypen. Wenn man den
Datentyp richtig wählt, spart man optimal Speicherplatz am Server.
Varchar - Zeichenkette, maximale Länge: 255 Zeichen
Text - Zeichenkette, maximale Länge: 65.535 Zeichen
-> TinyText - Zeichenkette, maximale Länge: 255 Zeichen
-> MediumText - Zeichenkette, maximale Länge: 16.777.215 Zeichen.
-> LongText - Zeichenkette, maximale Länge: 4,294,967,295 Zeichen (4GB)
Int - Kann Zahlen zwischen -2147483648 bis 2147483647 speichern.
-> Bool - Entspricht
TinyInt(1).
-> TinyInt - Kann Zahlen
zwischen -128 bis 127 speichern.
-> SmallInt - Kann Zahlen
zwischen -32768 bis 32767 speichern.
-> MediumInt - Kann Zahlen
zwischen -8388608 bis 8388607 speichern.
-> BigInt - Kann Zahlen
zwischen -9223372036854775808 bis 9223372036854775807 speichern.
Erstellen einer Datenbank
Auf der Hauptseite Deines phpMyAdmins ist ein Formular in dem du eine
neue Datenbank eintragen kannst.
Erstellen einer Tabelle
Ist die Datenbank erstellt so will man gleich Tabellen eintragen. Dies
geht ganz einfach indem man das Formular ganz unten verwendet.
Richtige Typen und Längen wählen
Bei einer Datenbankplanung ist es wichtig zu wissen, was man genau will. Es ist
sehr vorteilhaft für jede Tabelle ein "ID" Feld zu erstellen, welches
automatisch pro Record hochgezählt wird. MySQL besitzt, wie
alle anderen Datenbanken die extra Funktion "Auto-Increment".
Bei Auto-Increment muss man den Primärschlüssel Aktivieren. Dies ist der erste
Radio Button neben dem Extra Feld.
Die beiden anderen Felder ausfüllen und
abschicken. Dabei solltest Du darauf achten, wie lange zum Beispiel der Username
und das Passwort sein dürfen. In dem Beispiel wählen wir 40 für den Usernamen
und 20 für das Passwort.
MySQL im PHP Script einsetzen
Tutorial_Kapitel1_Beispiel_1.php:
<?php
$connect = mysql_connect("localhost", "Luky", "123456789") OR die("Keine Verbindung"); mysql_select_db("NeueDatenbank", $connect) OR die("Falsche Datenbank"); $q = mysql_query("SELECT * from NeueDatenbank_Tabelle1", $connect); while($data = mysql_fetch_array($q)) { echo $data["id"].".) ".$data["name"]; } mysql_close($connect);
?>
|
Mit mysql_connect()
verbindet man PHP zu MySQL.
Der erste Wert beinhaltet die Adresse des MySQL Servers, meistens "localhost".
Als zweites gibt man den MySQL Benutzer und als drittes das MySQL Passwort an.
Falls die Funktion fehlschlägt, wird die("Keine Verbindung"); ausgeführt.
Als nächstes müssen wir mit mysql_select_db()
die entsprechende Datenbank aussuchen. Als zweiten Parameter gibt man die
Resource an, die man mit mysql_connect()
erhalten hat.
Steht die Verbindung aufrecht, so kann man machen was man will. In diesem
Beispiel "saugen" wir unsere neu angelegte Tabelle mit mysql_query()
aus.
mysql_query() gibt eine Resource
zurück, die man an mysql_fetch_array
weitergeben kann. Wird mysql_fetch_array
in der While-Schleife eingesetzt, so kann man mehrere Zeilen auslesen. Die Daten
sind dann als Array erhältlich.
Am Schluss jeder Sitzung sollte die Verbindung zu MySQL wieder getrennt werden.
Dies geschieht mit mysql_close().
Fragen zu diesem Kapitel:
1. In was werden Tabellen gespeichert?
2. Was ist ein Record?
3. Welcher drei Hauptdatentypen kennst du?
4. Wie erstellt man eine Tabelle mit einer ID, die sich automatisch erhöht?
5. Mit welcher Funktion trennt man PHP von MySQL?
6. Mit welcher Funktion sendet man einen Query; Befehlssatz an MySQL?
Alle Beispiele von Kapitel 1
|
|
|