[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: вопрос по организации бд
daradal
Доброго времени суток. Я не опытный разработчик (начинающий), а сейчас появился один проект который я должен сделать хотелось бы правильно спроектировать бд, прошу помощи.

Суть такова, есть список компаний, у каждой компании есть предприятия, каждое предприятие делится на подразделения. Тут понятно три таблицы. А вопрос от в чем как правильно организовать обсуждения (по сути комментарий) к каждой сущности из каждой таблицы?
То есть сделать ли одну таблицу для комментариев или к каждой сущности отдельную таблицу комментариев? Если делать одну тонадо как то отделять к какой именно сущности принадлежит коментарий одного id тут не хватит надо еще как то к каждому комментарию id таблицы хранить

Спасибо заранее за внимание и помощь
Valick
одну единую таблицу для комментариев в ней id строки + два поля одно для определения о какой таблице идет речь, второе для указания внешнего ключа из той таблицы.
Хотя хранить имя таблицы в поле это плохо.
Блин мозг никак не хочет думать сегодня smile.gif
Сейчас может кто более правильную структуру подскажет.

_____________
Стимулятор ~yoomoney - 41001303250491
linker
Нужно два лишних поля в таблице с комментами, например: type - тип сущности(1 - компания, 2 - предприятие, 3 - подразделение), objid - идентификатор сущности. Соответственно

SELECT * FROM `comments` WHERE type = 1 AND objid = 3

имхо

_____________
Gear Framework
Gear Framework на Github
Valick
linker, id строки все равно нужно
ну а, тип сущности и название таблицы практически одна малина, просто я хотел избежать ненужных уровней абстракции, но согласен с вами лучше 123, а все остальное либо "держим в уме", либо в отдельной таблице


_____________
Стимулятор ~yoomoney - 41001303250491
linker
Valick
id коммента - само собой разумеется. Я бы для сущности тоже добавил поле type тогда возможны вообще абстрагироваться в запросах

SELECT * FROM `comments` WHERE type = {$obj->type} AND objid = {$obj->id}

_____________
Gear Framework
Gear Framework на Github
daradal
Спасибо ребята! Буду делать одну таблицу. Сам тоже склонялся к такому! Вы развеяли мои опасеня как неопытного спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.