Создание таблицы товарного каталога

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

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

Введение

Местная книжная лавка нуждается в помощи по настройке базы данных своего товарного каталога. В качестве их администратора базы данных вам нужно создать таблицу, которая будет хранить информацию о книгах. Это задание проверяет вашу способность создать таблицу MySQL с соответствующими типами данных и ограничениями.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL sql(("SQL")) -.-> sql/DataDefinitionandIntegrityGroup(["Data Definition and Integrity"]) mysql(("MySQL")) -.-> mysql/BasicKeywordsandStatementsGroup(["Basic Keywords and Statements"]) sql(("SQL")) -.-> sql/BasicSQLCommandsGroup(["Basic SQL Commands"]) mysql(("MySQL")) -.-> mysql/DatabaseFunctionsandDataTypesGroup(["Database Functions and Data Types"]) mysql/BasicKeywordsandStatementsGroup -.-> mysql/create_table("Table Creation") sql/BasicSQLCommandsGroup -.-> sql/create_table("CREATE TABLE statements") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/int("Integer Type") mysql/DatabaseFunctionsandDataTypesGroup -.-> mysql/varchar("Variable Character Type") sql/DataDefinitionandIntegrityGroup -.-> sql/data_types("Data Types") sql/DataDefinitionandIntegrityGroup -.-> sql/constraints("Constraints") subgraph Lab Skills mysql/create_table -.-> lab-418298{{"Создание таблицы товарного каталога"}} sql/create_table -.-> lab-418298{{"Создание таблицы товарного каталога"}} mysql/int -.-> lab-418298{{"Создание таблицы товарного каталога"}} mysql/varchar -.-> lab-418298{{"Создание таблицы товарного каталога"}} sql/data_types -.-> lab-418298{{"Создание таблицы товарного каталога"}} sql/constraints -.-> lab-418298{{"Создание таблицы товарного каталога"}} end

Создание таблицы "Книги"

Ваша задача - создать таблицу, которая будет хранить информацию о запасах книг в книжной лавке. Таблица должна эффективно хранить различные типы данных о каждой книге.

Задачи

  • Подключиться к MySQL как пользователь root
  • Использовать базу данных bookstore
  • Создать таблицу с именем books с соответствующими столбцами и типами данных для хранения следующей информации:
    • Идентификатор книги (должен автоматически инкрементироваться)
    • Название книги (максимум 200 символов, обязательное поле)
    • Цена (должна поддерживать десятичные значения до $999.99)
    • Дата публикации
    • Количество страниц (только целые числа)
    • Описание (длинный текст)
    • Количество в наличии (должно быть 0 или положительным числом)

Требования

  • Все операции должны выполняться в директории ~/project
  • Имя таблицы должно быть точно books
  • Все имена столбцов должны быть в нижнем регистре
  • Первичный ключ должен называться id
  • Название не может быть NULL
  • Цена должна иметь 2 десятичных знака
  • Поле quantity_in_stock не должно допускать отрицательных значений

Пример

После правильного создания таблицы, выполнение описания таблицы должно показать вывод, похожий на следующий:

DESCRIBE books;
+-------------------+--------------+------+-----+---------+----------------+
| Field             | Type         | Null | Key | Default | Extra          |
+-------------------+--------------+------+-----+---------+----------------+
| id                | int(11)      | NO   | PRI | NULL    | auto_increment |
| title             | varchar(200) | NO   |     | NULL    |                |
| price             | decimal(5,2) | YES  |     | NULL    |                |
| publication_date  | date         | YES  |     | NULL    |                |
| page_count        | int(11)      | YES  |     | NULL    |                |
| description       | text         | YES  |     | NULL    |                |
| quantity_in_stock | int(11)      | YES  |     | NULL    |                |
+-------------------+--------------+------+-----+---------+----------------+
✨ Проверить решение и практиковаться

Резюме

В этом задании вы практиковались в создании таблицы MySQL с соответствующими типами данных и ограничениями. Демонстрируемые навыки включают выбор подходящих типов данных для различных видов информации, реализацию автоматически инкрементируемых первичных ключей, настройку ограничений NOT NULL и использование ограничений CHECK для проверки данных. Эти основы являются важными для проектирования баз данных и будут часто использоваться при работе с базами данных MySQL.