MySQL [Einsteigertutorial]

Zuletzt aktualisiert am 25. Dezember 2023 von Lars

Am Besten lässt sich MySQL über die Weboberfläche phpMyadmin aufrufen, die du normalerweise via <hostname>/phpmyadmin erreicht. Fehlt diese, muss man auf die Kommandozeile zurückgreifen. Hier ein paar lose Notizen zum Arbeiten mit MySQL auf der Kommandozeile.

MySQL Kommandozeile aufrufen

mysql -h localhost -u root -p

Mit CTRL + C beendet man die komplette Kommandozeile. Hat man bei einem Befehl z.B. das Semikolon vergessen landet man in einem komischen Modus:

mysql> show tables
    ->

Diesen kann man durch Eingabe von "c" beenden, ohne mysql zu verlassen.

mysql> show tables
    -> c
mysql>

"Ctrl + U" löscht alles vom Cursor zurück zum Zeilenanfang.

"Ctrl + K" löscht alles vom Cursor bis zum Zeilenende.

Eine Datenbank erstellen

create database db01;

Eine Datenbank verwenden

use db01;

Eine Tabelle erstellen

	
create table adresse (id INT, name VARCHAR(100), strasse VARCHAR(100), prt VARCHAR(100));

Tabellen anzeigen lassen

show tables;
+----------------+
| Tables_in_db01 |
+----------------+
| adresse        |
+----------------+

Inhalt einer Tabelle anzeigen lassen

 explain adresse;
+---------+--------------+------+-----+---------+----------------+
| Field   | Type         | Null | Key | Default | Extra          |
+---------+--------------+------+-----+---------+----------------+
| id      | int(8)       | NO   | PRI | NULL    | auto_increment |
| name    | varchar(100) | YES  |     | NULL    |                |
| strasse | varchar(100) | YES  |     | NULL    |                |
| plzort  | varchar(100) | YES  |     | NULL    |                |
+---------+--------------+------+-----+---------+----------------+

Tabelle löschen

DROP TABLE test`;

Tabelle mit Werten füllen

insert into adresse (name,strasse,plzort) values ("Daisy Duck","Gansweg 10","1234 Entenhausen 2");

Inhalt einer Tabelle anzeigen

mysql> select * from adresse;
+----+-----------------+-----------------+--------------------+
| id | name            | strasse         | plzort             |
+----+-----------------+-----------------+--------------------+
|  1 | Lars Schlageter | Musterstrasse 1 | 1234 Entenhausen   |
|  2 | Daisy Duck      | Gansweg 10      | 1234 Entenhausen 2 |
+----+-----------------+-----------------+--------------------+

Zeile löschen

delete from adresse where (id="1");

MySQL Datentypen

char(m)Zeichenkette mit fester Länge mit max. 255 Zeichen
varchar(m)Zeichenkette variabler Länge mit max. 255 Zeichen
textText variabler Länge, max. 65535 Zeichen
longtextText variabler Länge, max. 4.2 GB
intGanze Zahl
float(m,d)Flieskommazahl, m = Anzahl Stellen, d = Anz. Dezimalstellen
double(m,d)Flieskommzahl mit doppelter Genauigkeit, m = Anzahl Stellen, d = Anz. Dezimalstellen
dezimal(m,d)Flieskommazahl als Zeichenkette
yearJahr
dateDatum in Form 2016-10-20
timeZeit in Form 23:12:30

Autoinkrement

Häufig wird das Attribut "Autoinkrement" benötigt. Ein Wertfeld mit diesem Attribut versieht jede neue Spalte mit einem fortlaufenden neuen Wert.

CREATE TABLE kunden (
id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, name VARCHAR(50)
);

Primary Key

Das Attribut "Primary Key" gibt an, dass das damit versehene Feld ein eindeutiger Schlüssel ist, also nur einmalig vorkommt.

Not Null

Das Attribut "Not Null" gibt an, dass das damit versehene Feld nicht den Wert Null annahmen darf.

Du willst meine Arbeit unterstützen? Dann freue ich mich über eine kleine Spende!

Schreibe einen Kommentar