Изменение ограничений таблицы базы данных MySQL

SQLSQLBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом проекте вы научитесь изменять таблицу countrylanguage в базе данных MySQL, удалив ограничение "not null" из поля IsOfficial.

👀 Предварительный просмотр

MariaDB [world]> DESC countrylanguage;
+-------------+---------------+------+-----+---------+-------+
| 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)

🎯 Задачи

В этом проекте вы научитесь:

  • Как запустить базу данных MySQL и получить доступ к ней с использованием команды sudo
  • Как импортировать файл данных world.sql в базу данных MySQL
  • Как изменить таблицу countrylanguage, удалив ограничение "not null" из поля IsOfficial
  • Как проверить изменения, внесенные в таблицу countrylanguage

🏆 Достижения

После завершения этого проекта вы сможете:

  • Разобраться, как работать с базами данных MySQL с использованием командной строки
  • Изменять структуры таблиц, изменяя ограничения на поля
  • Проверить изменения, внесенные в таблицу, описав ее структуру

Запустить базу данных MySQL и получить доступ к MySQL

В этом шаге вы научитесь запускать базу данных MySQL и получать доступ к ней с использованием команды sudo без пароля.

  1. Запустите службу базы данных MySQL:
sudo service mysql start
  1. Получите доступ к командной строке интерфейса MySQL:
sudo mysql

Теперь вы готовы работать с базой данных MySQL.

Импортировать базу данных World

В этом шаге вы научитесь импортировать файл данных world.sql в базу данных MySQL и переключиться на базу данных world.

  1. Импортируйте файл данных world.sql:
MariaDB [None]> SOURCE /home/labex/project/world.sql;
  1. Переключитесь на базу данных world:
MariaDB [None]> USE world;

Теперь у вас загружена база данных world и вы готовы работать с ней.

Изменить таблицу countrylanguage

В этом шаге вы научитесь удалить ограничение "not null" из поля IsOfficial в таблице countrylanguage.

  1. Откройте файл changeNull.sql в текстовом редакторе.
  2. Добавьте следующий SQL-запрос в файл:
ALTER TABLE countrylanguage MODIFY COLUMN IsOfficial ENUM('T', 'F') NULL;

Этот запрос удалит ограничение "not null" из поля IsOfficial в таблице countrylanguage.

  1. Сохраните файл changeNull.sql.

Выполнить скрипт changeNull.sql

В этом шаге вы научитесь выполнять скрипт changeNull.sql в командной строке интерфейсе MySQL.

  1. В командной строке интерфейсе MySQL выполните следующую команду для выполнения скрипта changeNull.sql:
MariaDB [world]> SOURCE /home/labex/project/changeNull.sql;

Это выполнит SQL-запросы в файле changeNull.sql и изменит таблицу countrylanguage.

Проверить изменения

В этом шаге вы научитесь проверять изменения, внесенные в таблицу countrylanguage.

  1. В командной строке интерфейсе MySQL выполните следующую команду для описания таблицы countrylanguage:
MariaDB [world]> DESC countrylanguage;

В выводе должно показаться, что ограничение "not null" было удалено из поля IsOfficial.

+-------------+---------------+------+-----+---------+-------+
| 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)

Поздравляем! Вы успешно изменили таблицу countrylanguage, удалив ограничение "not null" из поля IsOfficial.

✨ Проверить решение и практиковаться

Резюме

Поздравляем! Вы завершили этот проект. Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.