Photoshop
Cinema 4d
Fotografie
Weitere Grafiksoftware
HTML / CSS
JavaScript
Flash
PHP
Webserver
Sonstige
MySQL-Befehle (PHP Tutorial)
Tutorial erstellt von Kvn in MySQL 4 + 5, letzte Änderung am 07.11.2008Einführung
In diesem Tutorial möchte ich euch gerne grundlegende MySQL-Befehle näher bringen, mit denen Datenbanken verwaltet und konfiguriert werden können.
Hier ist eine Auflistung der MySQL-Befehle, die im Folgenden behandelt werden sollen:
- CREATE DATABASE
- CREATE TABLE
- DROP TABLE
- DROP DATABASE
- ALTER TABLE
- TRUNCATE TABLE
- INSERT INTO
- UPDATE
- DELETE FROM
Am besten fangen wir einfach gleich an.
Server starten: XAMPP
In dem Tutorial werde ich mit dem Programm XAMPP arbeiten, das die einfache Installation einer lokalen Entwicklungsumgebung, darunter auch eines MySQL-Servers, ermöglicht.
Ich habe es auf D: installiert, sodass der Befehl zum Ausführen folgendermaßen aussieht:
Code:
D:\XAMPP\xampp\mysql\bin\mysql -u root -p
Möglicherweise muss der Pfad bei euch entsprechend angepasst werden, wichtig sind auf jeden Fall die Parameter am Ende. Die Verbindung wird als User "root" (-u root) hergestellt und das Passwort wird später in der Konsole abgefragt (-p).
Nach dem Ausführen der Zeile über "Start" -> "Ausführen" wird die Konsole (cmd) geöffnet:
Dort müsst ihr wenn vorhanden euer Passwort eingeben. Bei XAMPP hat der Root-User standardmäßig kein Passwort, sodass für diesen Fall einfach ENTER gedrückt werden muss.
Schon befindet ihr euch auf dem "Start-Bildschirm":
Von hier könnt ihr dann die MySQL-Befehle eingeben.
Fangen wir mit den ersten an.
CREATE DATABASE
Diesen Befehl braucht ihr, um überhaupt erst einmal eine Datenbank zu erstellen.
In diesem Beispiel erstellen wir die Datenbank mit dem Namen "test".
Dafür tippt ihr ein:
Code:
CREATE DATABASE test;
Wenn ihr es richtig eingetippt habt (das Semikolon ; nicht vergessen), solltet ihr eine entsprechende Bestätigung mit dem Anfang "Query OK..." erhalten.
Um alle vorhandenen Datenbanken aufzulisten, wird dieser Befehl verwendet:
Code:
show databases;
Das sieht bei mir dann so aus (die anderen Datenbanken sind die von phpMyAdmin):
Wie man sieht, erscheint die zuvor erstellte Datenbank bereits in der Übersicht.
Gehen wir nun zum nächsten Befehl über.
CREATE TABLE
Mit diesem Befehl können neue Tabellen erstellt werden. Bevor ihr jedoch eine Tabelle erzeugt, müsst ihr die Datenbank "test" auswählen, da sonst eine Fehlermeldung erscheint.
Um in die Datenbank zu gelangen, benutzt ihr folgenden Code:
Code:
use test;
Ihr solltet eine kurze Bestätigung erhalten.
Nun seid ihr in der Datenbank und könnt Tabellen über folgenden Befehl erstellen:
Code:
CREATE TABLE tabelle;
Mit dieser Eingabe erstellt ihr zwar eine Tabelle, diese enhält allerdings noch keine Spalten. Das lässt sich aber ändern.
Ich habe für dieses Beispiel ein sehr einfaches Loginscript als Grundlage genommen. Dafür wollen wir eine Tabelle namens user mit den Feldern id, user und passwort erstellen. id bekommt den Typ INT (für Integer) mit einer Länge von 2 und natürlich soll es keine 0 sein, user bekommt den Typ VARCHAR mit einer Länge von 20 und auch hier nicht 0, die letzte Spalte passwort bekommt ebenfalls den Typ VARCHAR mit einer Länge von 30 und auch hier soll es nicht 0 sein.
Dafür schreibt ihr das Folgende:
Code:
CREATE TABLE user (id INT(2) NOT NULL, user VARCHAR(20) NOT NULL, passwort VARCHAR(30) NOT NULL);
Wie vorhin solltet ihr wieder eine Bestätigung erhalten:
Wenn ihr eure Tabelle in der Datenbank sehen wollt, tippt ihr den Befehl
Code:
show tables;
ein. Bei mir sieht es jetzt so aus:
Soviel zu dem Befehl CREATE TABLE.
Ab zum nächsten...
DROP TABLE
Natürlich kommt es auch einmal vor, dass man eine Tabelle löschen möchte, dafür gibt es den Befehl:
Code:
DROP TABLE tabelle;
Ich habe zu Präsentationszwecken eine neue Datenbank erstellt, darin eine Tabelle mit 2 Spalten.
Ich werde dies nicht mehr Schritt für Schritt erläutern, da die einzelnen Abläufe schon oben gezeigt wurden. Hier ein Screenshot vom gesamten Vorgehen:
DROP DATABASE
Auch eine Datenbank muss einmal gelöscht werden. Dafür ist der Befehl
Code:
DROP DATABASE datenbank;
zuständig.
Ich werde hier die Datenbank, die ich einen Abschnitt weiter oben erstellt habe, löschen. Dies geschieht mit:
Code:
DROP DATABASE data;
Das ganze sieht dann etwa so aus:
ALTER TABLE
Das Wort ALTER ist natürlich wieder englisch und hat somit nichts mit dem Alter einer Tabelle gemeinsam.
Der Befehl ermöglicht das nachträgliche Verändern von Tabellen. Ich erstelle zunächst einmal eine ähnliche Tabelle wie bei dem 2. Absatz:
Leider habe ich eine Spalte vergessen. Für so welche Momente gibt es "ALTER". Es wird so gebraucht:
Code:
ALTER TABLE tabelle ADD spalte
In diesem Falle wollen wir der Tabelle test noch eine Spalte namens passwort hinzufügen mit VARCHAR(30) und NOT NULL. Das machen wir so:
Es gibt noch weitere Aktionen die mit ALTER ausgeführt werden können:
- CHANGE
- MODIFY
- DROP
CHANGE wird genutzt, um eine Spalte zu ändern:
Code:
ALTER TABLE tabelle CHANGE spaltenname spalte_nachher_mit_eigenschaften;
Beispiel:
ALTER TABLE test CHANGE passwort pass VARCHAR(50) NOT NULL;
Beispiel:
ALTER TABLE test CHANGE passwort pass VARCHAR(50) NOT NULL;
MODIFY wird genutzt, um nur einen Datentyp zu ändern:
Code:
ALTER TABLE tabelle MODIFY spalte datentyp;
Beispiel:
ALTER TABLE test MODIFY pass VARCHAR(30);
Beispiel:
ALTER TABLE test MODIFY pass VARCHAR(30);
DROP wird genutzt, um eine Spalte zu löschen:
Code:
ALTER TABLE tabelle DROP spalte;
Beispiel:
ALTER TABLE test DROP user;
Beispiel:
ALTER TABLE test DROP user;
Soviel zu "ALTER", weiter gehts.
TRUNCATE TABLE
TRUNCATE TABLE ist dafür da, um alle Werte aus einer Datenbank zu löschen.
Dafür habe ich in die Tabelle test 2 Einträge gemacht (wie das geht, erfahrt ihr später):
Eine Tabelle kann man sich übrigens über
Code:
SELECT * FROM tabelle;
ansehen, das ist aber ein anderes Kapitel, auf das ich in diesem Tutorial nicht weiter eingehen werde.
Ihr seht also die beiden Einträge. Nun werde ich den Befehl
Code:
TRUNCATE TABLE test;
ausführen und danach die Tabelle wieder anzeigen lassen:
Wie ihr seht wird "Empty set" ausgegeben, was soviel heißt wie: "Nichts mehr da.".
INSERT INTO
INSERT INTO schreibt Datensätze in eine Datenbank. Das sieht dann etwa so aus:
Code:
INSERT INTO tabelle (spalte1,spalte2,spalte3) VALUES ('spalte1_wert','spalte2_wert','spalte3_wert');
Ich schreibe nun in die Tabelle test zur Veranschaulichung ein paar Werte:
Mit dem SELECT-Befehl habe ich dann noch die Tabelle ausgeben lassen.
UPDATE
Der UPDATE-Befehl ist dafür da, um Werte in einer Tabelle zu ändern. Dafür muss man natürlich auch noch angeben, welcher Datensatz geändert werden soll. Dies geschieht mit WHERE.
Hier einmal der Aufbau des Befehls:
Code:
UPDATE tabelle SET spalte = 'wert' WHERE spalte = 'wert';
Ich will nun also das Passwort von dem user "ich" auf "sehrgeheim" ändern.
Dafür schreiben wir diesen Befehl:
Code:
UPDATE test SET passwort = 'sehrgeheim' WHERE user = 'ich';
Das sieht dann so aus (Tabelle vorher oben, nachher unten):
Man kann auch mehrere Werte gleichzeitig aktualisieren: Ändern wir beispielsweise mal den Benutzernamen von "ich" auf "name" und das Passwort wieder auf "geheim" (oben wieder das vorherige, unten nachher):
Mit Kommata können die einzelnen Spalten voneinander abgetrennt werden.
Kommen wir zum letzten Befehl dieses Tutorials:
DELETE FROM
Mit DELETE FROM kann man einzelne Zeilen einer Tabelle löschen, das ganze funktioniert so:
Code:
DELETE FROM tabelle WHERE spalte = 'wert';
Wir werden jetzt einfach mal die Zeile 2 mit der id von "2" löschen:
Code:
DELETE FROM test WHERE id = '2';
Das sieht dann so aus, wieder ist oben das vorherige und unten das neue:
Abschluss
So, das wars mit diesem Tutorial. Ich hoffe ich konnte euch ein wenig helfen. Vielleicht sieht man sich ja mal im Forum. Bei Fragen schreibt mir einfach eine PM.
MfG Kvn
>> Allgemeine Fragen oder Probleme mit dem Tutorial? Hier gehts zum Forum!