Mysql/Grundlagen
Mysql/Grundlagen - MySQL-Einführung
Beschreibung
- MySQL ist die weltweit beliebteste Open-Source-Datenbank
- leistungsstarke Funktionen
- einfach einzurichten
- leicht zu verwenden
Anwendung
Datenbanken anzeigen
- Vorhandene Datenbanken anzeigen
Verwenden Sie eine SHOW DATABASES Anweisung
SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)
Datenbank erstellen
- Erstellen einer neuen Datenbank
Verwenden Sie eine CREATE DATABASE Anweisung
CREATE DATABASE pets;
Query OK, 1 row affected (0.01 sec)
- Prüfen, ob die Datenbank erstellt wurde
SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| pets |
| sys |
+--------------------+
5 rows in set (0.00 sec)
Tabelle erstellen
Erstellen einer Tabelle innerhalb einer Datenbank
- Datenbank auswählen
Wählen Sie zunächst die Datenbank aus, in der Sie die Tabelle mit einer USE-Anweisung erstellen möchten
USE pets
Database changed
Die Anweisung USE weist MySQL an, pets als Standarddatenbank für nachfolgende Anweisungen zu verwenden
- Tabelle erstellen
Als Nächstes erstellen Sie eine Tabelle mit einer CREATE TABLE Anweisung
CREATE TABLE cats
(
id INT unsigned NOT NULL AUTO_INCREMENT, # Unique ID for the record
name VARCHAR(150) NOT NULL, <nowiki># Name of the cat</nowiki>
owner VARCHAR(150) NOT NULL, <nowiki># Owner of the cat</nowiki>
birth DATE NOT NULL, <nowiki># Birthday of the cat</nowiki>
PRIMARY KEY (id) <nowiki># Make the id the primary key</nowiki>
);
Datentypen, die Sie in jeder Spalte verwenden können, werden in Datentypen erläutert. Primärschlüssel-Optimierung erklärt das Konzept von eines Primärschlüssels
- Was auf ein # in jeder Zeile folgt, ist ein Kommentar, der vom mysql Client ignoriert wird; siehe Kommentare für andere Kommentararten
Prüfen Sie, ob die Tabelle mit einer SHOW TABLES Anweisung erstellt wurde
SHOW TABLES;
+----------------+
| Tables_in_pets |
+----------------+
| cats |
+----------------+
1 row in set (0.00 sec)
DESCRIBE zeigt Informationen über alle Spalten einer Tabelle
DESCRIBE cats;
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(150) | NO | | NULL | |
| owner | varchar(150) | NO | | NULL | |
| birth | date | NO | | NULL | |
+-------+------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
Datensätze hinzufügen
- Hinzufügen von Datensätzen in eine Tabelle
Verwenden Sie zum Beispiel eine INSERT...VALUES-Anweisung
INSERT INTO cats ( name, owner, birth) VALUES
( 'Sandy', 'Lennon', '2015-01-03' ), ( 'Cookie', 'Casey', '2013-11-13' ), ( 'Charlie', 'River', '2016-05-21' );
</syntaxhighlight>
Siehe Literale Werte für das Schreiben von Strings, Datumswerten und anderen Arten von Literalen in MySQL
Datensätzen anzeigen
- Abrufen von Datensätzen aus einer Tabelle
Verwenden Sie eine SELECT-Anweisung und "*", um alle Spalten abzugleichen
SELECT * FROM cats; +----+---------+--------+------------+ | id | name | owner | birth | +----+---------+--------+------------+ | 1 | Sandy | Lennon | 2015-01-03 | | 2 | Cookie | Casey | 2013-11-13 | | 3 | Charlie | River | 2016-05-21 | +----+---------+--------+------------+ 3 rows in set (0.00 sec) </syntaxhighlight>
Um bestimmte Spalten und Zeilen nach einer bestimmten Bedingung auszuwählen, verwenden Sie die WHERE-Klausel
SELECT name FROM cats WHERE owner = 'Casey'; +--------+ | name | +--------+ | Cookie | +--------+ 1 row in set (0.00 sec) </syntaxhighlight>
Datensatz löschen
- Löschen eines Datensatzes aus einer Tabelle
Verwenden Sie eine DELETE-Anweisung, um einen -Datensatz aus einer Tabelle zu löschen, und geben Sie das Kriterium für das Löschen mit der WHERE-Klausel an
DELETE FROM cats WHERE name='Cookie'; Query OK, 1 row affected (0.05 sec)
SELECT * FROM cats; +----+---------+--------+------------+ | id | name | owner | birth | +----+---------+--------+------------+ | 1 | Sandy | Lennon | 2015-01-03 | | 3 | Charlie | River | 2016-05-21 | +----+---------+--------+------------+ 2 rows in set (0.00 sec) </syntaxhighlight>
Spalten hinzufügen/löschen
- Hinzufügen oder Löschen einer Spalte aus einer Tabelle
Verwenden Sie eine ALTER TABLE...ADD Anweisung, um eine Spalte hinzuzufügen
- Sie können z.B
- eine AFTER Klausel verwenden, um den Ort der neuen Spalte anzugeben
mysql> ALTER TABLE cats ADD gender CHAR(1) AFTER name; Query OK, 0 rows affected (0.24 sec) Records: 0 Duplicates: 0 Warnings: 0 </syntaxhighlight>
Verwenden Sie DESCRIBE, um das Ergebnis zu überprüfen
DESCRIBE cats; +--------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------+------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | name | varchar(150) | NO | | NULL | | | gender | char(1) | YES | | NULL | | | owner | varchar(150) | NO | | NULL | | | birth | date | NO | | NULL | | +--------+------------------+------+-----+---------+----------------+ 5 rows in set (0.00 sec) </syntaxhighlight>
SHOW CREATE TABLE zeigt eine CREATE TABLE Anweisung, die noch mehr Details über die Tabelle liefert
SHOW CREATE TABLE cats\G
- 1
- row ***************************
Table: cats
Create Table: CREATE TABLE `cats` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(150) NOT NULL, `gender` char(1) DEFAULT NULL, `owner` varchar(150) NOT NULL, `birth` date NOT NULL, PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1 1 row in set (0.00 sec) </syntaxhighlight>
Verwenden Sie ALTER TABLE...DROP um eine Spalte zu löschen
ALTER TABLE cats DROP gender; Query OK, 0 rows affected (0.19 sec) Records: 0 Duplicates: 0 Warnings: 0
DESCRIBE cats; +-------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+------------------+------+-----+---------+----------------+ | id | int(10) unsigned | NO | PRI | NULL | auto_increment | | name | varchar(150) | NO | | NULL | | | owner | varchar(150) | NO | | NULL | | | birth | date | NO | | NULL | | +-------+------------------+------+-----+---------+----------------+ 4 rows in set (0.00 sec) </syntaxhighlight>
Im Tutorial finden Sie weitere Anleitungen für die Arbeit mit dem MySQL-Server
Problembehebung
Konfiguration
Dateien
| Datei | Beschreibung |
|---|---|
Anhang
Siehe auch
Dokumentation
SQL-Anweisungen erklärt detailliert die reichhaltige Syntax und die Funktionalität der SQL-Anweisungen, die hier vorgestellt werden
Links
Projekt
Weblinks