Grundlagen der MySQL-Datenbankverwaltung

MySQLMySQLBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Projekt lernst du, wie du verschiedene DDL (Data Definition Language)-Operationen auf einer MySQL-Datenbank ausführst. Du wirst eine Datenbank, Tabellen erstellen, die Tabellenstrukturen ändern, Daten löschen und Tabellen und Datenbanken löschen.

👀 Vorschau

Vorschau auf MySQL-DDL-Operationen
Änderung der MySQL-Tabellenstruktur
Änderung der MySQL-Tabellenstruktur

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du den MySQL-Dienst starten und die Datenbank mit dem Befehl sudo zugreifen kannst
  • Wie du eine Datenbank mit einem bestimmten Zeichensatz erstellen kannst
  • Wie du Tabellen mit verschiedenen Datentypen und Primärschlüsseln erstellst
  • Wie du Tabellenstrukturen ändern kannst, z. B. um Primärschlüssel automatisch inkrementieren zu lassen
  • Wie du Daten aus Tabellen mit DELETE und TRUNCATE löschen kannst
  • Wie du Tabellen und Datenbanken löschen kannst

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Die grundlegenden DDL-Operationen in MySQL zu verstehen
  • Datenbanken und Tabellen zu erstellen und zu verwalten
  • Tabellenstrukturen an deine Bedürfnisse anzupassen
  • Daten effizient aus Tabellen zu löschen
  • Tabellen und Datenbanken erforderlichenfalls zu löschen

Starte MySQL und greife auf die Datenbank zu

In diesem Schritt lernst du, wie du den MySQL-Dienst startest und wie du ohne Passwort über den Befehl sudo auf die Datenbank zugreifst.

  1. Starte den MySQL-Dienst mit dem folgenden Befehl:
sudo service mysql start
  1. Greife auf die MySQL-Datenbank ohne Passwort über den Befehl sudo zu:
sudo mysql

Jetzt bist du bereit, zum nächsten Schritt fortzufahren.

Erstelle die Datenbank und die Tabellen

In diesem Schritt lernst du, wie du die Datenbank testddl mit dem als utf8mb4 angegebenen Zeichensatz erstellst und dann die Tabellen emp und dept innerhalb der Datenbank erstellst.

  1. Erstelle die Datenbank testddl mit dem als utf8mb4 angegebenen Zeichensatz:
CREATE DATABASE IF NOT EXISTS `testddl` DEFAULT CHARACTER SET utf8mb4;
  1. Verwende die Datenbank testddl:
USE `testddl`;
  1. Erstelle die Tabelle emp mit der folgenden Struktur:
CREATE TABLE `emp` (
  `eid` int(5) NOT NULL,
  `ename` varchar(50),
  `sal` DECIMAL,
  `deptno` int(5),
  PRIMARY KEY (`eid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
  1. Erstelle die Tabelle dept mit der folgenden Struktur:
CREATE TABLE `dept` (
  `did` int(5) NOT NULL,
  `dname` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`did`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Jetzt hast du die Datenbank testddl und die Tabellen emp und dept erstellt. Lass uns zum nächsten Schritt fortfahren.

Ändere die Tabellen

In diesem Schritt lernst du, wie du die Primärschlüssel der Tabellen emp und dept so ändern, dass sie automatisch inkrementiert werden, beginnend bei 10. Du wirst auch den Datentyp des sal-Felds in der emp-Tabelle auf Integer ändern.

  1. Ändere den Primärschlüssel der emp-Tabelle so, dass er automatisch inkrementiert wird, beginnend bei 10:
ALTER TABLE `emp` AUTO_INCREMENT=10;
  1. Ändere den Primärschlüssel der dept-Tabelle so, dass er automatisch inkrementiert wird, beginnend bei 10:
ALTER TABLE `dept` AUTO_INCREMENT=10;
  1. Ändere den Datentyp des sal-Felds in der emp-Tabelle auf Integer:
ALTER TABLE `emp` MODIFY `sal` INT(5);

Jetzt werden die Primärschlüssel der Tabellen emp und dept automatisch inkrementiert, beginnend bei 10, und der Datentyp des sal-Felds in der emp-Tabelle ist auf Integer geändert.

Lösche Daten aus den Tabellen

In diesem Schritt lernst du, wie du alle Daten aus den Tabellen emp und dept löschst.

  1. Lösche alle Daten aus der Tabelle emp mit dem DELETE-Statement:
DELETE FROM `emp`;
  1. Lösche alle Daten aus der Tabelle dept mit dem TRUNCATE-Statement:
TRUNCATE TABLE `dept`;

Jetzt sind die Tabellen emp und dept leer.

Lösche die Tabelle und die Datenbank

In diesem letzten Schritt lernst du, wie du die Tabelle emp und die Datenbank testddl löschst.

  1. Lösche die Tabelle emp:
DROP TABLE `emp`;
  1. Lösche die Datenbank testddl:
DROP DATABASE `testddl`;

Du kannst auf die folgende Ausgabe verweisen:

MariaDB [(none)]> USE `testddl`;
Database changed
MariaDB [testddl]> CREATE TABLE `emp` (
    ->   `eid` int(5) NOT NULL,
    ->   `ename` varchar(50),
    ->   `sal` DECIMAL,
    ->   `deptno` int(5),
    ->   PRIMARY KEY (`eid`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.005 sec)

MariaDB [testddl]> CREATE TABLE `dept` (
    ->   `did` int(5) NOT NULL,
    ->   `dname` varchar(50) DEFAULT NULL,
    ->   PRIMARY KEY (`did`)
    -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Query OK, 0 rows affected (0.004 sec)

MariaDB [testddl]> desc emp;
+--------+---------------+------+-----+---------+-------+
| Field  | Type          | Null | Key | Default | Extra |
+--------+---------------+------+-----+---------+-------+
| eid    | int(5)        | NO   | PRI | NULL    |       |
| ename  | varchar(50)   | YES  |     | NULL    |       |
| sal    | decimal(10,0) | YES  |     | NULL    |       |
| deptno | int(5)        | YES  |     | NULL    |       |
+--------+---------------+------+-----+---------+-------+
4 rows in set (0.001 sec)

MariaDB [testddl]> ALTER TABLE `emp` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.005 sec)
Records: 0  Duplicates: 0  Warnings: 0

MariaDB [testddl]> ALTER TABLE `dept` AUTO_INCREMENT=10;
Query OK, 0 rows affected (0.003 sec)
Records: 0  Duplicates: 0  Warnings: 0

MariaDB [testddl]> ALTER TABLE `emp` MODIFY `sal` INT(5);
Query OK, 0 rows affected (0.006 sec)
Records: 0  Duplicates: 0  Warnings: 0

MariaDB [testddl]> desc emp;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| eid    | int(5)      | NO   | PRI | NULL    |       |
| ename  | varchar(50) | YES  |     | NULL    |       |
| sal    | int(5)      | YES  |     | NULL    |       |
| deptno | int(5)      | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.001 sec)

MariaDB [testddl]> DELETE FROM `emp`;
Query OK, 0 rows affected (0.000 sec)

MariaDB [testddl]> TRUNCATE TABLE `dept`;
Query OK, 0 rows affected (0.003 sec)

MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept              |
| emp               |
+-------------------+
2 rows in set (0.000 sec)

MariaDB [testddl]> DROP TABLE `emp`;
Query OK, 0 rows affected (0.002 sec)

MariaDB [testddl]> show tables;
+-------------------+
| Tables_in_testddl |
+-------------------+
| dept              |
+-------------------+
1 row in set (0.000 sec)

MariaDB [testddl]> show schemas;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| testddl            |
+--------------------+
5 rows in set (0.000 sec)

MariaDB [testddl]> DROP DATABASE `testddl`;
Query OK, 1 row affected (0.004 sec)

MariaDB [(none)]> show schemas;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.000 sec)

Herzlichen Glückwunsch! Du hast die DDL-Komplett-Challenge abgeschlossen. Du hast gelernt, wie man eine Datenbank erstellt, Tabellen erstellt, Tabellenstrukturen modifiziert, Daten aus Tabellen löscht und Tabellen und Datenbanken löscht.********

✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.