Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
-12 / 0 / 0
Регистрация: 25.07.2019
Сообщений: 43
1

Правильно ли создавать отдельную таблицу для комментариев для каждого поста?

01.08.2020, 16:39. Показов 756. Ответов 5
Метки php, sql (Все метки)

Author24 — интернет-сервис помощи студентам
Я делаю свой первый сайт, хочу сделать комментарии к каждому посту. У каждого поста должны быть отдельные коментарии. Как реализовать это в MySQL? Может создавать для каждого поста свою таблицу комментариев со структурой | id | author_name | text | или создать общую таблицу комментариев со структурой | id | post_id | author_name | text | ? Какой вариант эффективнее или есть какой то другой способ? Первый вариант кажется не правильным, так-как для каждого поста придется создавать отдельную таблицу, а второй потому что, если очень много постов и комментариев будет, то каждый раз при посмотре комментариев конкретного поста, придется фильтровать по post_id.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.08.2020, 16:39
Ответы с готовыми решениями:

Проектирование БД - Сделать для каждого города отдельную таблицу или, все же, запихать все в одну?
Вопрос примитивный, но все же. Делаю простую админку для простого одностраничного сайта.. При...

Стоит ли делать отдельную базу для комментариев?
Добрый день, чисто вопрос о "лучших практиках". Разрабатываю интернет-магазин и нужно добавить...

Как для каждого пользователя создать отдельную БД
Здраствуйте, у меня возник такой вопрос. У меня есть база данных пользователей, и мне нужно что бы...

Сделать отдельную запись для каждого номера телефона
Здравствуйте! Поправьте, пожалуйста код. Не могу разобраться где я не прав. Заранее спасибо!

5
541 / 352 / 194
Регистрация: 07.11.2018
Сообщений: 1,238
03.08.2020, 10:01 2
Цитата Сообщение от Bauka555 Посмотреть сообщение
ервый вариант кажется не правильным,
Помоему первый проще и правильнее.Потом в таблице поста укажите ид коментария и все.2 таблицы ..таблица постов и таблица коментариев.
1
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,345
03.08.2020, 10:11 3
Bauka555, конечно же одну таблицу комментариев нужно (а то это ж сколько таблиц будет, если для каждого поста их лепить)

В таблице уникальный ключ записи (id_comment), плюс уникальный составной (id_comment,id_post)

author_name - не нужен тут, лучше id_author . Тогда по таблице пользователей имя и так можно будет найти
1
-12 / 0 / 0
Регистрация: 25.07.2019
Сообщений: 43
03.08.2020, 23:37  [ТС] 4
Да, ок, id в таблице коментариев и так означает comment_id, а я хотел добавить author_name, чобы получить все нужные данные одным запросом и не запрашивать имя по айдишнику каждый раз для каждого комментария.
0
1136 / 881 / 152
Регистрация: 25.07.2015
Сообщений: 1,959
04.08.2020, 07:13 5
Цитата Сообщение от Bauka555 Посмотреть сообщение
а я хотел добавить author_name, чобы получить все нужные данные одным запросом и не запрашивать имя по айдишнику каждый раз для каждого комментария.
Вам ничего не мешает сделать связь к таблице author по полю id_author и выводить в итоговом запросе
не его id , а author_name без всяких дополнительных запросов.
Что , к слову , как отметил Алексей1153, будет более правильным, т.к. в author_name
возможны ошибки пользователя при вводе имени, которые устанете отлавливать.
Как пример самая распространённая и трудноотлавливаемая - случайное изменение раскладки клавиатуры
при вводе символа "С" -визуально одно и то же , по факту разные символы.
0
фрилансер
5499 / 5095 / 1047
Регистрация: 11.10.2019
Сообщений: 13,345
04.08.2020, 18:13 6
Цитата Сообщение от Алексей1153 Посмотреть сообщение
плюс уникальный составной (id_comment,id_post)
это я переборщил с ключами )) Второй ключ (уникальный-составной) не надо: надо не уникальное индексированное поле id_post - по нему и будут вытаскиваться все записи для поста
0
04.08.2020, 18:13
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.08.2020, 18:13
Помогаю со студенческими работами здесь

Вывод информации из БД для каждого поста
Всем привет. Проблема такая. Делаю свой блог. У меня на странице index.php находятся все посты ,...

Нужно ли делать отдельную таблицу для цен
Ситуация следующая... Имеется бд для магазина одежды. В магазин может поступать один и тот же товар...

Как создать отдельную функцию для каждого объекта класса
Ну например есть класс struct Class { void onUpdate (); } Мне надо сделать так, что бы у...

Генерация страниц для каждого поста блога
Есть база данных с такими полями id (уникальный номер статьи), title (заголовок статьи), date (дата...

Как установить иконку FontAwesome для каждого поста?
Здравствуйте! Есть пост, в котором нужно вывести иконку FontAwesome, причем для каждого поста...

Правильно перенести код для миниатюры поста
Есть миниатюра в посте. Миниатюра картинки по размеру иная, чем оригинал. <div...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru