Nun haben Sie gelernt wie sie Datenbanken und Tabellen erstellen,
löschen und verändern können. Da dies aber nicht der einzige Sinn und
Zweck von MySQL ist, sehen Sie jetzt wie sie diese Datensätze auch
noch füllen, löschen und ändern.
mysql> INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name [(spaltenname]...)] VALUES (datum1,...),(...).....;
|
oder:
mysql> INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name [(spaltenname]...)] SELECT ...;
|
oder:
mysql> INSERT [LOW_PRIORITY | DELAYED] [IGNORE] [INTO] tbl_name SET spaltenname1=datum1, spaltenname2=datum2, ....;
|
Das INSERT-Kommando dient dazu, (wie sie bereits ahnen)
neue Daten in die Tabelle aufzunehmen.
Sie können zwischen den drei Varianten wählen. Aber der wohl am
meisten verwendete Befehl wird der erste sein. Mit diesem Befehl
können Sie die Daten einfügen die Sie gerne möchten.
An dem folgenden Beispiel möchte ich Ihnen gerne zeigen, wie das in
etwa aussieht:
(Ich beziehe mich hierbei wieder auf die kunden-beispiels-Datenbank)
mysql> INSERT INTO kunden (name, vorname, strasse, plz, ort) VALUES -> ('Sommerfeld', 'Frank', 'Waldweg 12', 85221, 'Dachau');
|
Die Kundennummer wird (da ja mit der Option auto_increment belegt)
automatisch von 1 weg hochgezählt.
Möchten Sie z.B. mehrere Datensätze auf einmal eingeben, dann
verwenden Sie einfach mehrere Klammerpaare die durch ein Komma
getrennt sind:
mysql> INSERT INTO kunden (name, vorname, strasse, plz, ort) VALUES -> ('Brunninger', 'Jasmin', 'Giechstrasse 1', 81249, 'Muenchen'), -> ('Stadler', 'Matthias', 'Glonntalstrasse 15', 85253, 'Erdweg'), -> ('Sistig', 'Marianne', 'Linztal 1', 82149, 'Olching');
|
Die zweite Methode ist die Option SELECT.
Meist werden SELECT-Befehle mittels eines MySQL-Frontends ausgeführt.
Diese können in einer Internetseite eingebunden sein. Dabei wird ein
Script die Tipparbeit für Sie abnehmen.
Aber um Ihnen zu zeigen, wie Sie auch "händisch" damit arbeiten
können, zeige ich Ihnen 2 Beispiele wie Sie das bewerkstelligen:
mysql> SELECT * FROM kunden;
|
damit erhalten Sie (das ganze ist nun sehr unübersichtlich) alle
Spalten und Datensätze der Tabelle kunden aufgelistet.
mysql> SELECT kunden_nr, vorname, name, ort FROM kunden;
|
Sie können auch einzelne Spalten auswählen!
|
Sie erhalten hier wiederum den Syntax von dem Befehl SELECT.
Ich werde Ihnen das Kommando anschließend anhand von Beispielen
erklären und zeigen was es für Möglichkeiten gibt.
mysql> SELECT [STRAIGHT_JOIN] [SQL_SMALL_RESULTS] [SQL_BIG_RESULTS] [SQL_BUFFER_RESULTS] [HIGH_PRIORITY] [DISTINCT | DISTINCTROW | ALL]
select_ausdruck.... [INTO {OUTFILE | DUMPFILE} 'datei_name' export_optionen] [FROM tbl_name [WHERE where_definitionen] [GROUP BY {unsigned_integer | spalten_name | formula} [ASC | DESC], ...] [HAVING where_definition] [ORDER BY {unsigned_integer | spalten_name | formula} [ASC | DESC], ...] [LIMIT [offset,] zeilen] [PROCEDURE prozedur_name] [FOR UPDATE | LOCK IN SHARE MODE]]
|
Die Ausgabe von SELECT erzeugt immer eine Tabelle.
Der wohl simpelste Befehl lautet SELECT 1;.
Ich führe Ihnen nun einige Beispiele auf, die Ihnen die Möglichkeiten
von SELECT zeigen sollen.
mysql> SELECT kunden_nr AS Kundennummer, vorname AS Vorname, name AS Name, -> ort AS Ort FROM kunden;
|
Damit vergeben Sie für die vorhanden Spaltenbezeichnungen, schönere
und einprägsamere Namen.
mysql> SELECT COUNT(kunden_nr) FROM kunden;
|
Mit COUNT können Sie die Anzahl der Datensätze anzeigen lassen.
mysql> SELECT * FROM kunden LIMIT 0, 5;
|
Ein tolles feature ist LIMIT. Sie können so die Anzahl der zu
anzeigenden, Datensätze auf eine bestimmte Anzahl (hier 5) beschränken
lassen. In diesem Beispiel heisst es: Zeige mir maximal 5 Treffer ab
den ersten Datensatz. Folgend wäre es dann: LIMIT 5,5 LIMIT 10,5
usw. somit erhalten Sie immer die nächsten 5 Sätze auf Ihrem
Bildschirm. Verwendet wird diese Anweisung meist bei Suchmaschinen.
mysql> SELECT auftrags_nr, wert AS Netto, wert*1.16 AS Brutto FROM auftraege;
|
Sie können auch mittels SELECT Berechnungen ausgeben lassen.
mysql> SELECT vorname, name, strasse, plz, ort FROM kunden WHERE -> ort = 'Dachau';
|
Wer wohnt eigentlich alles von den Kunden in Dachau?
mysql> SELECT vorname, name, strasse, plz, ort FROM kunden WHERE -> name LIKE 'Sch%';
|
Hier werden alle Nachnahmen mit Sch..... aufgelistet.
mysql> SELECT SUM(wert) FROM auftraege WHERE -> kunden_nr = 45350
|
Lassen Sie MySQL einfach mal für Sie rechnen
|
Es soll auch mal vorkommen, dass Sie Datensätze löschen müssen.
Dies ist eigentlich weiter nicht tragisch.
Sie erhalten vom mir wieder einen Syntax und ein Beispiel dazu.
mysql> DELETE [LOW_PRIORITY | QUICK] FROM tbl_name [WHERE where_definition] [ORDER BY ...] [LIMIT rows]
|
Beispiel:
mysql> DELETE FROM auftraege WHERE kunden_nr = 1000
|
Damit löschen Sie den angegebenen Datensatz...
Viel Erfolg ;)
|
|