Skip to content

Свой сайт знакомств #5: разработка структуры базы данных в phpMyAdmin

Разработка структуры базы данных для сайта знакомств в phpMyAdmin с созданием таблицы пользователей и описанием полей.

Key Takeaways

  • Каждое поле анкеты выделяется в отдельный столбец для удобства SQL-запросов и фильтрации.
  • Использование разных типов данных (int, text, boolean) для оптимального хранения информации.
  • Связь с другими таблицами (например, местоположения) для нормализации данных.
  • Важность проверки корректности структуры базы данных на практике.
  • Добавление полей логина и пароля является обязательным для безопасности учётных записей.

What the video covers

  • Введение в создание базы данных для сайта знакомств.
  • Создание таблицы пользователей с указанием количества столбцов.
  • Определение и описание основных полей таблицы: ID, имя, возраст, пол, описание анкеты.
  • Добавление дополнительных полей: фото, дети, образование, религия, тип отношений.
  • Обсуждение типов данных для каждого поля (целое число, текст, булев тип).
  • Причины выделения каждого параметра в отдельный столбец для удобства сортировки и выборок.
  • Добавление полей роста, веса, профессии, языков, курения и употребления алкоголя.
  • Связь с таблицей местоположений для подхвата данных.
  • Проверка корректности создания таблицы и работы с данными (добавление, редактирование, удаление).
  • Добавление полей логина и пароля для учётной записи.

Answers

Questions about this video

Почему каждое поле анкеты выделяется в отдельный столбец базы данных?

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

Какие типы данных используются для полей таблицы пользователей?

Используются целые числа (int) для ID, возраста, роста и веса, текстовые поля (text) для имени, описания, профессии и других, а также булевы типы для полей, таких как курение и употребление алкоголя.

Как обеспечивается связь с местоположением пользователя в базе данных?

Местоположение хранится в отдельной таблице, и в таблице пользователей создаётся поле, которое подхватывает данные из этой таблицы для нормализации и удобства управления.

Full Transcript — Download SRT & Markdown

00:01
Speaker A
Добрый день, дорогие подписчики! Рад вас приветствовать на очередном выпуске шоу "Свой сайт знакомств", где мы, соответственно, в режиме реального времени пытаемся разработать и запустить сервис для онлайн-знакомств.
00:32
Speaker A
Так, с прошлого выпуска у нас с вами уже готовы шаблоны, и, по-моему, самое время заняться разработкой базы данных.
01:03
Speaker A
Первым делом хотелось бы, конечно, начать с... чего хотелось бы начать? С разработки такой таблицы, как пользователи. Для этого... что для этого? Давайте мы с вами создадим табличку и пока укажем количество столбцов — 4.
01:44
Speaker A
Так, первое поле у нас с вами будет ID. То есть это тип — целое число, соответственно, это поле у нас с вами будет изменяться как идентификатор.
02:19
Speaker A
Следующее поле давайте мы с вами возьмём текстовое значение и пропишем имя.
02:51
Speaker A
Имя писать буду, наверное, вот такой вот латиницей, да? То есть мы будем писать русские слова латиницей таким образом, чтобы вам было понятно, какие данные мы сохраняем в таблицы.
03:18
Speaker A
Ну и чтобы мне при дальнейшей разработке никак не напрягаться. Так, идём дальше. Имя — следующее значение, наверное, нам с вами понадобится местоположение. Имя обязательно.
03:44
Speaker A
Нам нужен возраст. Возраст пускай будет целым числом, чуть позже расскажу, как мы будем считать возраст.
04:26
Speaker A
Дальше, очевидно, нам нужно ещё... что нам ещё нужно? Наверное, пол. Пускай тоже будет текстовое значение.
05:02
Speaker A
Нет, вот, кстати, возраст пускай будет целым числом, пол у нас будет тоже текстовым значением. Но, конечно, что мы можем сделать? А мы можем, наверное, и указывать как тип int, так и получается булевый тип данных — true или false, но пока оставим текстом.
05:46
Speaker A
Если что, мы в любом случае сможем это изменить. Дальше... а так, так, так, тип отношений. Вот я что я сейчас пытаюсь — посмотреть по табличке и понять, какую информацию нам нужно хранить о анкете.
06:14
Speaker A
Наверное, следующее мы сделаем — описание анкеты, тоже текстовой тип.
06:38
Speaker A
Так, так, так, дальше нам нужны ещё какие-нибудь данные для хранения. Давайте сделаем фото, тоже текстовой тип. Тут мы будем хранить ссылку на картинку.
07:11
Speaker A
Так, пол есть. Давайте сделаем поле дети. Вот тут можно что использовать? Тут можно использовать булевый тип данных, соответственно. Либо они есть, либо их нет — будут у нас значения.
07:55
Speaker A
Дальше образование. Так, давайте добавим точно также поле образования, тоже текстовой тип. Возможно, мы потом типы вот этого образования вынесем в отдельное поле, нет, в отдельную табличку.
08:25
Speaker A
Так, что нам ещё понадобится? Образование, так, религиозное убеждение. Давайте религия тоже мы сделаем. Религия тоже пока будет текст. У нас тип отношений...
08:57
Speaker A
Так, тип не туда пишу. Нам нужно создать новое поле, так, тип отношений.
09:27
Speaker A
Посмотрите. Конечно же, можно было, наверное, создать одно текстовое поле, в котором мы сохранили бы все вот эти данные внутри массива.
09:55
Speaker A
Но почему я выделяю в базе данных, соответственно, под каждую ячейку, под каждый фильтр свой столбец? Для того, чтобы в дальнейшем мы могли с вами написать сортировку по всем этим параметрам.
10:30
Speaker A
Только для этого, чтобы у нас всё идеально работало из коробки. То есть при обращении к базе данных, чтобы мы могли писать SQL-запросы, и они, соответственно, выводились нужные выборки.
11:04
Speaker A
Так, следующее поле — рост. Рост, я думаю, укажем целое значение, наверное, никто не будет указывать его в нецелых данных.
11:46
Speaker A
Так, дальше рост. Давайте вес — следующее поле. Профессия и карьера. Мы также пока не определились с профессиями и карьерой, соответственно, какие у нас будут поля, поэтому укажем тип текст.
12:34
Speaker A
Так, профессия — следующее поле у нас будет языки. Языки тоже текстовое поле. Вот тут как раз-таки в языках, возможно, у нас с вами будет массив с перечислением языков.
13:31
Speaker A
Идём дальше. Так, курение и употребление. Давайте назовём поля "курят". Тип получается какой будет? Хочу булев поставить.
14:08
Speaker A
Так, и пьёт соответственно. Пьёт тоже тип булев.
14:49
Speaker A
Так, ну вроде бы всё, все фильтры я перенёс. Единственное, у нас нет местоположения, правильно?
15:16
Speaker A
Да, нет местоположения, но местоположения хотелось бы, чтобы у нас подхватывалось, то есть из другой таблички.
16:06
Speaker A
Так, я что я добавляю ещё одно? Так, местоположение. Так, тип и хорошо, сохраняем, и всё, у нас появилась табличка.
16:28
Speaker A
Так, в эту табличку мы сможем сейчас с вами добавить хоть какие-то данные.
16:58
Speaker A
Ну давайте что-нибудь пропишем. Для начала я хочу посмотреть, как вообще у нас отрабатывает таблица и создаются ли правильно ID. Вперёд.
17:24
Speaker A
Так, добавлена одна строка. Да, строчка добавляется, мы её можем редактировать, удалять. Хорошо, значит, эта таблица у нас создалась с вами правильно.
17:45
Speaker A
А дальше что? Дальше нам нужны вспомогательные таблички. Вот, кстати, в ID я забыл указать пароль от учётной записи. Давайте мы всё-таки это поле добавим.
18:08
Speaker A
То есть у нас после имени, наверное... А может быть так и оставить?
18:38
Speaker A
Так, подождите, у нас как с вами ячейка называется? Так, база данных дейтинг, давайте мы назовём её, наверное...
19:12
Speaker A
Так, так, так, лучше, конечно, в одной таблице использовать всю структуру.
19:46
Speaker A
Дальше, что? После имени давайте мы с вами укажем... так, логин добавим два поля соответственно. Какое поле? Логин. Логин.
20:16
Speaker A
Так, в качестве логина будет текст, и пароль тоже текст. Сохраняем.
20:47
Speaker A
Се, так, смотрим на табличку. Да, логин, пароль, имя, которое будет отображаться на сайте, возраст, пол, описание анкеты, фото.
21:10
Speaker A
Ага, так, дети есть, нету, образование, религия, тип отношений, рост, вес, профессия, языки, так, курит, пьёт, местоположение.
Topics:база данныхphpMyAdminсайт знакомствструктура таблицыпользователиSQLтип данныхонлайн-знакомстваразработкатаблица пользователей

Get More with the SozAI App

Transcribe recordings, audio files, and YouTube videos — with AI summaries, speaker detection, and unlimited transcriptions.

Or transcribe another YouTube video here →