Программирование. Web-программист.+Тема+4.2.+Лекция. Лекция Проверка связи Отправьте, пожалуйста, смайлик в чат
Скачать 1.73 Mb.
|
Проектирование БД для сайта Тема 4.2. Проектирование реляционных баз данных для веб-сайта. Блок-схемы Лекция Проверка связи Отправьте, пожалуйста, смайлик в чат Если у вас всё отлично со связью Если у вас есть какие-то проблемы со связью Правила участия ➜ Оффтоп обсуждение можно продолжить в ТГ ➜ Сегодня мы работаем: ➜ Приготовьте блокнот и ручку для ведения конспекта ➜ Выключите микрофон ➜ Если хотите задать вопрос, напишите его в чат ➜ Запись вебинара будет доступна в личном кабинете ● 45 минут — лекция ● 45 минут — лекция ● 15 минут — перерыв ● 45 минут — лекция Цели занятия Спроектировать базу данных для сайта Научиться использовать онлайн- инструменты для проектирования базы данных 1 2 План занятия Понятие реляционной базы данных 1 2 Типы отношений Проектирование базы данных 3 Понятие реляционной базы данных Реляционная база данных ➜ Данные в реляционных базах данных представлены в табличном виде и хранятся в таблицах ➜ Таблицы связаны друг с другом отношениями id Наименование Количество Цена 1 Шкаф 1 40 000 2 Стол 2 4 000 3 Стул 8 3 000 4 Диван 1 30 000 id Имя Телефон 1 Маша +7 123 564 78 12 2 Петя +7 952 345 86 50 3 Вася +7 928 780 45 71 Товары Покупатели id покупателя id товара Количество Дата покупки 2 1 1 20.05.2022 2 1 1 20.05.2022 1 3 4 20.05.2022 1 3 1 22.05.2022 2 1 1 22.05.2022 3 2 1 22.05.2022 Покупки Реляционная база данных ➜ Формально MySQL — это СУБД ➜ MySQL встроена в системы управления содержимым и конструкторы сайтов Какие базы данных вы использовали за последний год? 59% 35% 32% 27% 25% 20% 19% 14% MySQL PostgreSQL MongoDB SQLite Redis MS SQL Server MariaDB Oracle Database Данные JetBrains за 2021 год MySQL — реляционная база данных ➜ MySQL уже установлена на локальном сервере ➜ Чтобы работать с СУБД, мы будем использовать утилиту phpMyAdmin ВАЖНО! Проверьте, что ваш хостинг поддерживает MySQL Типы отношений Требования к таблицам Все строки таблицы должны быть уникальны, то есть не может быть строк с одинаковыми первичными ключами Имена столбцов таблицы должны быть различны, а значения их простыми, то есть недопустима группа значений в одном столбце одной строки 1 2 Все строки одной таблицы должны иметь одну структуру, соответствующую именам и типам столбцов Порядок размещения строк в таблице может быть произвольным 3 4 Отношение «Один к одному» Одной записи основной таблицы соответствует только одна запись вспомогательной таблицы id name phone 1 Маша +7 123 564 78 12 2 Петя +7 952 345 86 50 3 Вася +7 928 780 45 71 customers id passport city 1 00 00 158309 Москва 2 11 11 762018 Новосибирск 3 12 22 198347 Томск personal data Отношение «Один ко многим» Одной записи основной таблицы соответствует несколько записей вспомогательной таблицы product_id name 1 Шкаф 2 Стол 3 Стул 4 Диван products id product_id price 1 1 40 000 2 1 42 000 3 1 35 999 4 2 4 000 5 2 2590 6 3 1600 price Отношение «Многие ко многим» ➜ Одной записи основной таблицы соответствует несколько записей вспомогательной таблицы ➜ Вид связи не поддерживается, на практике реализуется через дополнительную таблицу Отношение «Многие ко многим» customer_id product_id quantity order_date 2 1 1 20.05.2022 2 1 1 20.05.2022 1 3 4 20.05.2022 1 3 1 22.05.2022 2 1 1 22.05.2022 3 2 1 22.05.2022 orders product_id name 1 Шкаф 2 Стол 3 Стул 4 Диван products id name phone 1 Маша +7 123 564 78 12 2 Петя +7 952 345 86 50 3 Вася +7 928 780 45 71 customers Немного практики Приведите примеры отношения «многие ко многим» Проектирование базы данных Пример схемы базы данных База данных CMS WordPress Описание структуры базы данных Сервисы для создания схем и диаграмм базы данных ➜ WWW SQL Designer ➜ DbDesigner.net ➜ Quick DBD ➜ Visual Paradigm Online ➜ Draw.io Немного практики Перейдём на сайт DbDesigner.net Спроектируем базу данных интернет- магазина 1 2 Итоги занятия ✔ Знаем, как проектируются реляционные базы данных ✔ Спроектировали базу данных с помощью онлайн-инструмента DbDesigner.net Анонс следующего занятия ➜ Познакомимся с языком SQL Ваши вопросы Контакты @nadezhda_tupikina Telegram #вопрос_преподавателю |