Mysql/einführung: Unterschied zwischen den Versionen
|  Leere Seite erstellt | |||
| (12 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
| == Einführung in MySQL == | |||
| ; MySQL ist die beliebteste Open-Source-Datenbank der Welt | |||
| * Trotz der leistungsstarken Funktionen von ist MySQL einfach einzurichten und leicht zu verwenden. | |||
| * Im Folgenden finden Sie einige Anleitungen, die Ihnen helfen, MySQL in wenigen Schritten einzurichten und zum Laufen zu bringen. | |||
| * Wir erklären auch, wie Sie einige grundlegende Operationen mit MySQL unter Verwendung des '''mysql''' Clients durchführen können. | |||
| ; Anmerkungen | |||
| * Die folgenden Anweisungen gelten nicht unbedingt für Versionen von MySQL, die älter als MySQL 5.7 sind. | |||
| * Dies sind nur Anweisungen für eine Neuinstallation. | |||
| * Wenn Sie bereits MySQL verwenden und auf eine neuere Version upgraden möchten, lesen Sie bitte [https://dev.mysql.com/doc/refman/8.0/en/upgrading.html MySQL upgraden]. | |||
| ; Rechtliche Informationen | |||
| * https://dev.mysql.com/doc/mysql-getting-started/en/index.html#legalnotice | |||
| Wenn Sie Hilfe bei der Verwendung von MySQL benötigen, besuchen Sie bitte die [http://forums.mysql.com/ MySQL-Foren], wo Sie unter Ihre Probleme mit anderen MySQL-Benutzern diskutieren können. | |||
| == Grundlegende Operationen mit MySQL == | |||
| Hier finden Sie einige grundlegende Operationen mit dem MySQL-Server. [https://dev.mysql.com/doc/refman/8.0/en/sql-statements.html SQL-Anweisungen] erklärt detailliert die reichhaltige Syntax und die Funktionalität der SQL-Anweisungen, die unter dargestellt sind.  | |||
| Vorhandene Datenbanken anzeigen.  Verwenden Sie eine [https://dev.mysql.com/doc/refman/8.0/en/show-databases.html SHOW DATABASES] Anweisung:  | |||
|  mysql> SHOW DATABASES; | |||
|  +--------------------+ | |||
|  | Database           | | |||
|  +--------------------+ | |||
|  | information_schema | | |||
|  | mysql              | | |||
|  | performance_schema | | |||
|  | sys                | | |||
|  +--------------------+ | |||
|  4 rows in set (0.00 sec) | |||
| Erstellen einer neuen Datenbank.  Verwenden Sie eine [https://dev.mysql.com/doc/refman/8.0/en/create-database.html CREATE DATABASE] Anweisung:  | |||
|  mysql> CREATE DATABASE pets; | |||
|  Query OK, 1 row affected (0.01 sec) | |||
| Prüfen Sie, ob die Datenbank erstellt worden ist:  | |||
|  mysql> SHOW DATABASES; | |||
|  +--------------------+ | |||
|  | Database           | | |||
|  +--------------------+ | |||
|  | information_schema | | |||
|  | mysql              | | |||
|  | performance_schema | | |||
|  | pets               | | |||
|  | sys                | | |||
|  +--------------------+ | |||
|  5 rows in set (0.00 sec) | |||
| Erstellen einer Tabelle innerhalb einer Datenbank.  Wählen Sie zunächst die Datenbank aus, in der Sie die Tabelle mit einer [https://dev.mysql.com/doc/refman/8.0/en/use.html USE]-Anweisung erstellen möchten:  | |||
|  mysql> USE pets | |||
|  Database changed | |||
| Die Anweisung [https://dev.mysql.com/doc/refman/8.0/en/use.html USE] weist MySQL an, <tt>pets</tt> als Standarddatenbank für nachfolgende Anweisungen zu verwenden. Als nächstes erstellen Sie eine Tabelle mit einer [https://dev.mysql.com/doc/refman/8.0/en/create-table.html 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 [https://dev.mysql.com/doc/refman/8.0/en/data-types.html Datentypen] erläutert. [https://dev.mysql.com/doc/refman/8.0/en/primary-key-optimization.html Primärschlüssel-Optimierung] erklärt das Konzept von eines Primärschlüssels. Was auf ein <tt><nowiki>#</nowiki></tt> in jeder Zeile folgt, ist ein Kommentar, der vom '''mysql''' Client ignoriert wird; siehe [https://dev.mysql.com/doc/refman/8.0/en/comments.html Kommentare] für andere Kommentararten.  | |||
| Prüfen Sie, ob die Tabelle mit einer [https://dev.mysql.com/doc/refman/8.0/en/show-tables.html SHOW TABLES] Anweisung erstellt wurde:  | |||
|  mysql> SHOW TABLES; | |||
|  +----------------+ | |||
|  | Tables_in_pets | | |||
|  +----------------+ | |||
|  | cats           | | |||
|  +----------------+ | |||
|  1 row in set (0.00 sec) | |||
| [https://dev.mysql.com/doc/refman/8.0/en/explain.html DESCRIBE] zeigt Informationen über alle Spalten einer Tabelle:  | |||
|  mysql> 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) | |||
| Hinzufügen von Datensätzen in eine Tabelle.  Verwenden Sie zum Beispiel eine [https://dev.mysql.com/doc/refman/8.0/en/insert.html 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' ); | |||
| Siehe [https://dev.mysql.com/doc/refman/8.0/en/literals.html Literale Werte] für das Schreiben von Strings, Datumswerten und anderen Arten von Literalen in MySQL.  | |||
| Abrufen von Datensätzen aus einer Tabelle.  Verwenden Sie eine [https://dev.mysql.com/doc/refman/8.0/en/select.html SELECT]-Anweisung und "*", um alle Spalten abzugleichen:  | |||
|  mysql> 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) | |||
| Um bestimmte Spalten und Zeilen nach einer bestimmten Bedingung auszuwählen, verwenden Sie die <tt>WHERE</tt>-Klausel:  | |||
|  mysql> SELECT name FROM cats WHERE owner = 'Casey'; | |||
|  +--------+ | |||
|  | name   | | |||
|  +--------+ | |||
|  | Cookie | | |||
|  +--------+ | |||
|  1 row in set (0.00 sec) | |||
| Löschen eines Datensatzes aus einer Tabelle.  Verwenden Sie eine [https://dev.mysql.com/doc/refman/8.0/en/delete.html DELETE]-Anweisung, um einen -Datensatz aus einer Tabelle zu löschen, und geben Sie das Kriterium für das Löschen mit der <tt>WHERE</tt>-Klausel an:  | |||
|  mysql> DELETE FROM cats WHERE name='Cookie'; | |||
|  Query OK, 1 row affected (0.05 sec) | |||
|  mysql> 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) | |||
| Hinzufügen oder Löschen einer Spalte aus einer Tabelle.  Verwenden Sie eine [https://dev.mysql.com/doc/refman/8.0/en/alter-table.html ALTER TABLE...ADD] Anweisung, um eine Spalte hinzuzufügen. Sie können z.B. eine <tt>AFTER</tt> 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 | |||
| Verwenden Sie [https://dev.mysql.com/doc/refman/8.0/en/explain.html DESCRIBE], um das Ergebnis zu überprüfen:  | |||
|  mysql> 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) | |||
| [https://dev.mysql.com/doc/refman/8.0/en/show-create-table.html SHOW CREATE TABLE] zeigt eine [https://dev.mysql.com/doc/refman/8.0/en/create-table.html CREATE TABLE] Anweisung, die noch mehr Details über die Tabelle liefert:  | |||
|  mysql> 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) | |||
| Verwenden Sie [https://dev.mysql.com/doc/refman/8.0/en/alter-table.html ALTER TABLE...DROP] um eine Spalte zu löschen:  | |||
|  mysql> ALTER TABLE cats DROP gender; | |||
|  Query OK, 0 rows affected (0.19 sec) | |||
|  Records: 0  Duplicates: 0  Warnings: 0 | |||
|  mysql> 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) | |||
| Im [https://dev.mysql.com/doc/refman/8.0/en/tutorial.html Tutorial] finden Sie weitere Anleitungen für die Arbeit mit dem MySQL-Server . | |||
Aktuelle Version vom 31. Oktober 2025, 07:12 Uhr
Einführung in MySQL
- MySQL ist die beliebteste Open-Source-Datenbank der Welt
- Trotz der leistungsstarken Funktionen von ist MySQL einfach einzurichten und leicht zu verwenden.
- Im Folgenden finden Sie einige Anleitungen, die Ihnen helfen, MySQL in wenigen Schritten einzurichten und zum Laufen zu bringen.
- Wir erklären auch, wie Sie einige grundlegende Operationen mit MySQL unter Verwendung des mysql Clients durchführen können.
- Anmerkungen
- Die folgenden Anweisungen gelten nicht unbedingt für Versionen von MySQL, die älter als MySQL 5.7 sind.
- Dies sind nur Anweisungen für eine Neuinstallation.
- Wenn Sie bereits MySQL verwenden und auf eine neuere Version upgraden möchten, lesen Sie bitte MySQL upgraden.
- Rechtliche Informationen
Wenn Sie Hilfe bei der Verwendung von MySQL benötigen, besuchen Sie bitte die MySQL-Foren, wo Sie unter Ihre Probleme mit anderen MySQL-Benutzern diskutieren können.
Grundlegende Operationen mit MySQL
Hier finden Sie einige grundlegende Operationen mit dem MySQL-Server. SQL-Anweisungen erklärt detailliert die reichhaltige Syntax und die Funktionalität der SQL-Anweisungen, die unter dargestellt sind.
Vorhandene Datenbanken anzeigen. Verwenden Sie eine SHOW DATABASES Anweisung:
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | +--------------------+ 4 rows in set (0.00 sec)
Erstellen einer neuen Datenbank. Verwenden Sie eine CREATE DATABASE Anweisung:
mysql> CREATE DATABASE pets; Query OK, 1 row affected (0.01 sec)
Prüfen Sie, ob die Datenbank erstellt worden ist:
mysql> SHOW DATABASES; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | pets | | sys | +--------------------+ 5 rows in set (0.00 sec)
Erstellen einer Tabelle innerhalb einer Datenbank. Wählen Sie zunächst die Datenbank aus, in der Sie die Tabelle mit einer USE-Anweisung erstellen möchten:
mysql> USE pets Database changed
Die Anweisung USE weist MySQL an, pets als Standarddatenbank für nachfolgende Anweisungen zu verwenden. 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, # Name of the cat owner VARCHAR(150) NOT NULL, # Owner of the cat birth DATE NOT NULL, # Birthday of the cat PRIMARY KEY (id) # Make the id the primary key );
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:
mysql> SHOW TABLES; +----------------+ | Tables_in_pets | +----------------+ | cats | +----------------+ 1 row in set (0.00 sec)
DESCRIBE zeigt Informationen über alle Spalten einer Tabelle:
mysql> 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)
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' );
Siehe Literale Werte für das Schreiben von Strings, Datumswerten und anderen Arten von Literalen in MySQL.
Abrufen von Datensätzen aus einer Tabelle. Verwenden Sie eine SELECT-Anweisung und "*", um alle Spalten abzugleichen:
mysql> 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)
Um bestimmte Spalten und Zeilen nach einer bestimmten Bedingung auszuwählen, verwenden Sie die WHERE-Klausel:
mysql> SELECT name FROM cats WHERE owner = 'Casey'; +--------+ | name | +--------+ | Cookie | +--------+ 1 row in set (0.00 sec)
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:
mysql> DELETE FROM cats WHERE name='Cookie'; Query OK, 1 row affected (0.05 sec)
mysql> 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)
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
Verwenden Sie DESCRIBE, um das Ergebnis zu überprüfen:
mysql> 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)
SHOW CREATE TABLE zeigt eine CREATE TABLE Anweisung, die noch mehr Details über die Tabelle liefert:
mysql> 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)
Verwenden Sie ALTER TABLE...DROP um eine Spalte zu löschen:
mysql> ALTER TABLE cats DROP gender; Query OK, 0 rows affected (0.19 sec) Records: 0 Duplicates: 0 Warnings: 0
mysql> 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)
Im Tutorial finden Sie weitere Anleitungen für die Arbeit mit dem MySQL-Server .