Änderung von MySQL-Datentabellenbeschränkungen

SQLSQLBeginner
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 die Tabelle countrylanguage in einer MySQL-Datenbank ändern kannst, indem du die "not null"-Einschränkung für das Feld IsOfficial entfernst.

👀 Vorschau

MariaDB [world]> DESC countrylanguage;
+-------------+---------------+------+-----+---------+-------+
| Feld        | Typ           | Null | Schlüssel | Standard | Zusatz |
+-------------+---------------+------+-----+---------+-------+
| CountryCode | char(3)       | NEIN | PRI |         |       |
| Sprache     | char(30)      | NEIN | PRI |         |       |
| IsOfficial  | enum('T','F') | JA   |         | NULL    |       |
| Prozentsatz  | decimal(4,1)  | NEIN |         | 0,0     |       |
+-------------+---------------+------+-----+---------+-------+
4 Zeilen in Satz (0,002 Sekunden)

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du die MySQL-Datenbank starten und mit dem Befehl sudo darauf zugreifen kannst
  • Wie du die Datendatei world.sql in die MySQL-Datenbank importierst
  • Wie du die Tabelle countrylanguage ändern kannst, indem du die "not null"-Einschränkung für das Feld IsOfficial entfernst
  • Wie du die Änderungen an der Tabelle countrylanguage überprüfst

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Zu verstehen, wie du mit MySQL-Datenbanken über die Befehlszeilenschnittstelle arbeitest
  • Tabellenstrukturen ändern, indem du die Einschränkungen für Felder veränderst
  • Die Änderungen an einer Tabelle überprüfen, indem du ihre Struktur beschreibst

Starte die MySQL-Datenbank und greife auf MySQL zu

In diesem Schritt lernst du, wie du die MySQL-Datenbank startest und ohne Passwort mit dem Befehl sudo darauf zugreifst.

  1. Starte den MySQL-Datenbankdienst:
sudo service mysql start
  1. Greife auf die MySQL-Befehlszeilenschnittstelle zu:
sudo mysql

Jetzt bist du bereit, mit der MySQL-Datenbank zu arbeiten.

Importiere die World-Datenbank

In diesem Schritt lernst du, wie du die Datendatei world.sql in die MySQL-Datenbank importierst und zur world-Datenbank wechselt.

  1. Importiere die Datendatei world.sql:
MariaDB [None]> SOURCE /home/labex/project/world.sql;
  1. Wechsle zur world-Datenbank:
MariaDB [None]> USE world;

Jetzt hast du die world-Datenbank geladen und bist bereit, damit zu arbeiten.

Ändere die Tabelle countrylanguage

In diesem Schritt lernst du, wie du die "not null"-Einschränkung für das Feld IsOfficial in der Tabelle countrylanguage entfernst.

  1. Öffne die Datei changeNull.sql in einem Texteditor.
  2. Füge den folgenden SQL-Befehl zur Datei hinzu:
ALTER TABLE countrylanguage MODIFY COLUMN IsOfficial ENUM('T', 'F') NULL;

Dieser Befehl entfernt die "not null"-Einschränkung für das Feld IsOfficial in der Tabelle countrylanguage.

  1. Speichere die Datei changeNull.sql.

Führe das Skript changeNull.sql aus

In diesem Schritt lernst du, wie du das Skript changeNull.sql in der MySQL-Befehlszeilenschnittstelle ausführst.

  1. In der MySQL-Befehlszeilenschnittstelle führe den folgenden Befehl aus, um das Skript changeNull.sql auszuführen:
MariaDB [world]> SOURCE /home/labex/project/changeNull.sql;

Dies führt die SQL-Anweisungen in der Datei changeNull.sql aus und ändert die Tabelle countrylanguage.

Überprüfe die Änderungen

In diesem Schritt lernst du, wie du die Änderungen an der Tabelle countrylanguage überprüfst.

  1. In der MySQL-Befehlszeilenschnittstelle führe den folgenden Befehl aus, um die Tabelle countrylanguage zu beschreiben:
MariaDB [world]> DESC countrylanguage;

Die Ausgabe sollte zeigen, dass die "not null"-Einschränkung für das Feld IsOfficial entfernt wurde.

+-------------+---------------+------+-----+---------+-------+
| Field       | Type          | Null | Key | Default | Extra |
+-------------+---------------+------+-----+---------+-------+
| CountryCode | char(3)       | NO   | PRI |         |       |
| Language    | char(30)      | NO   | PRI |         |       |
| IsOfficial  | enum('T','F') | YES  |     | NULL    |       |
| Percentage  | decimal(4,1)  | NO   |     | 0.0     |       |
+-------------+---------------+------+-----+---------+-------+
4 rows in set (0.002 sec)

Herzlichen Glückwunsch! Du hast die Tabelle countrylanguage erfolgreich geändert, indem du die "not null"-Einschränkung für das Feld IsOfficial entfernt hast.

✨ 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.