Схема БД
Опубликовано в:
http://web.archive.org/web/20070216030405/http://www.npj.ru/drz4npj,
http://web.archive.org/web/20070216030405/http://www.npj.ru/npjdev-start
Всё, как мне и обещали, время у меня теперь есть, и буду я его тратить
на то, на что и собирался.
Делаю контроль сохранения целостности (набор внешних ключей).
Кое-что уже сделал, но есть вопросы. И домыслы. Если что-то упустил,
буду рад услышать.
Таблица: npj_comments
Ссылки:
record_id -> npj_records.record_id
user_id -> npj_users.user_id
user_node_id -> npj_nodes.node_id
pic_id -> npj_userpics.pic_id
На что ссылаются поля:
parent_id,
lft_id,
rgt_id,
rep_original_id,
rep_node_id,
replicator_user_id
(первые три, как понимаю, ссылаются на npj_comments.comment_id?)
Таблица: npj_comments_filtered
Ссылки:
comment_id -> npj_comments.comment_id
filter_user_id -> npj_users.user_id
Таблица: npj_comments_replicas
Ссылки:
comment_id -> npj_comments.comment_id
На что ссылаются поля:
replicated_to_node_id (тут текстовое поле. Уж не на npj_nodes.node_id ссылка? Этот же вопрос касается всех других node_id в других таблицах),
replicated_to_comment_id
Таблица: npj_groups
Ссылки:
user_id -> npj_users.user_id
Таблица: npj_links
Ссылки:
from_user_id -> npj_users.user_id
to_user_id -> npj_users.user_id
На что ссылаются поля:
from_id,
to_id
Случайно, не на npj_records.record_id?
Таблица: npj_profiles
Ссылки:
user_id -> npj_users.user_id
На что ссылается поле
parent_id
Таблица: npj_record_versions
Ссылки:
record_id -> npj_records.record_id
На что ссылается поле
version_id
Таблица: npj_records
Ссылки:
user_id -> npj_users.user_id
author_id -> npj_users.user_id
last_comment_id -> npj_comments.comment_id
pic_id -> npj_userpics.pic_id
edited_user_node_id -> npj_nodes.node_id
Таблица: npj_records_rare
Ссылки:
record_id -> npj_records.record_id
На что ссылаются поля:
announced_id,
announced_comments,
rep_node_id,
replicator_user_id,
rep_original_id
Таблица: npj_records_ref
Ссылки:
record_id -> npj_records.record_id
owner_id -> npj_users.user_id
keyword_id -> npj_records.record_id
keyword_user_id -> npj_users.user_id
last_comment_id -> npj_comments.comment_id
Таблица: npj_records_ref_rules
Ссылки:
keyword_id -> npj_records.record_id
Таблица: npj_records_replicas
Ссылки:
record_id -> npj_records.record_id
На что ссылаются поля:
replicated_to_node_id,
replicated_to_record_id
Таблица: npj_replica_dest_rules
Ссылки:
owner_id -> npj_users.user_id
record_id -> npj_records.record_id
rep_rule_id – > npj_replica_rules.rep_rule_id
На что ссылаются поля:
dest_id
Таблица: npj_replica_dests
Ссылки:
dest_rule_id -> npj_replica_dest_rules.dest_rule_id
keyword_id – > npj_records.record_id
Таблица: npj_replica_queue
Ссылки:
rep_rule_id -> npj_replica_rules.rep_rule_id
На что ссылаются поля:
object_id (вопрос касается и полей в других таблицах с именем object_id)
Таблица: npj_replica_rules
Ссылки:
owner_id -> npj_users.user_id
record_id -> npj_records.record_id
Таблица: npj_subscription
Ссылки:
user_id -> npj_users.user_id
Таблица: npj_usage_stats
Ссылки:
principal_user_id -> npj_users.user_id
Таблица: npj_user_groups
Ссылки:
group_id -> npj_groups.group_id
user_id -> npj_users.user_id
keyword_id – > npj_records.record_id
Таблица: npj_user_menu
Ссылки:
user_id -> npj_users.user_id
Таблица: npj_userpics
Ссылки:
user_id -> npj_users.user_id
Таблица: npj_users
Ссылки:
root_record_id -> npj_records.record_id
owner_user_id -> npj_users.user_id
pic_id -> npj_userpics.pic_id
Далее. Я тут черновик по схеме БД сделал.
http://web.archive.org/web/20070216030405/http://www.npj.ru/drz4npj/tablicy
Поля в таблицах комментаев не имеют, завтра вставлю. Но комментарии буду не ко всем полям. Надо, чтобы они были. Хотя бы кратко. Но лучше поподробней. Не только всякие
lft_id/rgt_id, но и вообще всё. Это важно. Вообще, со схемой момент
– ключевой. Всё ведь вокруг неё верится. Прошу не только «великолепную
четвёрку» высказаться (у неё, похоже, совсем со временем труба), но и
всех заинтересованных и «рубящих фишку».
Кстати, уважаемый
http://web.archive.org/web/20070216030405/http://www.npj.ru/kuso обещал найти в закромах некоторые диаграммы.
Вот, напоминаю: поищите уж, если нетрудно.