Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ссылочная целостность в древовидных структурах / 25 сообщений из 34, страница 1 из 2
12.11.2006, 15:55
    #34121983
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
А как обеспечить сабж, если оперативная таблица (структура дерева) ссылается на разные справочники? Я ж не могу внешний ключ построить одновременно по нескольким таблицам.
...
Рейтинг: 0 / 0
13.11.2006, 14:47
    #34124054
mv
mv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZ
....оперативная таблица (структура дерева) ссылается на разные справочники?

Ты думаешь, кто-нибудь представляет твою структуру?


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
13.11.2006, 15:18
    #34124201
Ivan A Kostko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZ Я ж не могу внешний ключ построить одновременно по нескольким таблицам.

А что мешает использовать комбинированные ключи(т.е. из нескольких столбцов, один из которых в частности овечает за таблицу к которой цепляется данная запись) ???
...
Рейтинг: 0 / 0
13.11.2006, 16:39
    #34124545
Валентин К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
А древовидные структуры не пробовали применять ) (ржунимагу)
...
Рейтинг: 0 / 0
14.11.2006, 13:01
    #34126782
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Ivan A Kostko parovoZZ Я ж не могу внешний ключ построить одновременно по нескольким таблицам.

А что мешает использовать комбинированные ключи(т.е. из нескольких столбцов, один из которых в частности овечает за таблицу к которой цепляется данная запись) ???

А можно здесь поподробнее?
...
Рейтинг: 0 / 0
14.11.2006, 13:37
    #34126966
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
имеется ввиду следующее

Код: plaintext
1.
2.
3.
ID integer,
parent_ID integer,
link_ID integer, /* ссылка на запись в таблице, которая */
table integer, /* определяется этим полем*/

В принципе, можно в оперативной таблице создать для каждого справочника своё поле.
...
Рейтинг: 0 / 0
14.11.2006, 20:06
    #34128515
mv
mv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Может, тебе ссылку на КАЖДУЮ табличку хранить? Те, на которые ссылки нет -
будут Null содержать.


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
15.11.2006, 10:50
    #34129335
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
mv
Может, тебе ссылку на КАЖДУЮ табличку хранить? Те, на которые ссылки нет -
будут Null содержать.
-1
5000 сообщений и такое написать...
...
Рейтинг: 0 / 0
15.11.2006, 11:05
    #34129410
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
фиолетовым - твои справочники
желтым - дерево
зеленым - базовый системный объект от которого наследуются сущности(в данном случае твои справочники). Наследование реализуется в виде связи 1-к-1 (почитай, поищи по форуму - неоднократно обсуждалось).
...
Рейтинг: 0 / 0
15.11.2006, 14:58
    #34130491
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Деревья отдельно, каталог 'всего' отдельно.
...
Рейтинг: 0 / 0
15.11.2006, 21:05
    #34131658
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Чёрт, поиск не работает. Сервак что ли перегружен?

Я дурак или как. Мне не понятно, как в зелёной таблице указать, что запись ссылается на какую-то из фиолетовых таблиц, пусть даже и один-к-одному? Грубо говоря есть объект. У него есть адрес, телефон и т.д. Это одна таблица. Есть системы на этих объектах - телевидение, освещение и т.д. Это другая. Ну и т.д. Как отделить мух от котлет в одном поле?
...
Рейтинг: 0 / 0
15.11.2006, 22:19
    #34131721
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZЯ дурак или как. Мне не понятно, как в зелёной таблице указать, что запись ссылается на какую-то из фиолетовых таблиц, пусть даже и один-к-одному? Грубо говоря есть объект. У него есть адрес, телефон и т.д. Это одна таблица. Есть системы на этих объектах - телевидение, освещение и т.д. Это другая. Ну и т.д. Как отделить мух от котлет в одном поле?
Зеленая таблица ни на что не ссылается. (Направления внешних ключей видны по направлениям стрелок :) ).
Ссылки объектов друг на друга (отношения ID-ParentID) определены в желтой таблице.
В этой таблице как ID, так и ParentID ссылаются на зеленую таблицу.
...
Рейтинг: 0 / 0
15.11.2006, 22:26
    #34131729
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
...
Рейтинг: 0 / 0
16.11.2006, 09:05
    #34132109
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Ну хорошо. Я нашёл из зелёной таблицы ID и Name. Но как мне теперь определить, к какой сущности относится эта запись? Это объект, система (см. выше) или что-то другое?
...
Рейтинг: 0 / 0
16.11.2006, 11:31
    #34132507
Alexey Kudinov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZНу хорошо. Я нашёл из зелёной таблицы ID и Name. Но как мне теперь определить, к какой сущности относится эта запись? Это объект, система (см. выше) или что-то другое? Вопрос который вы задали на самом деле ключевой в подобного рода схемах. Немного переусердствовав можно получить таблицу-мусорник, где есть все, но понять что обозначает каждая строка невозможно.

Дзен состоит в том, что такой вопрос и задавать не нужно :)

Вам была нужна ссылочная целостность - схема Романа ее обеспечивает. Если ваша СУБД не поддерживает FK на view, предложеный вариант это лучшее, что вы можете сделать.
Альтернатива - триггера или какие-то иные внешние проверки.
...
Рейтинг: 0 / 0
16.11.2006, 12:43
    #34132930
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZНо как мне теперь определить, к какой сущности относится эта запись?
Обычно в "системный объект" вводят поле ObjectType, но оно используется исключительно как метаинформация для среднего звена(клиента) и в реализации ссылочной целостности роли не играет.
Например, сценарий может быть таким:
1.На клиенте в дереве кликаем на какой то узел дерева
2.Получаем ObjectType узла.
3.По ObjectType понимаем какую форму нужно открыть для редактирования и какую хп вызвать для получения данных.
...
Рейтинг: 0 / 0
16.11.2006, 13:24
    #34133122
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Роман Дынник parovoZZНо как мне теперь определить, к какой сущности относится эта запись?
Обычно в "системный объект" вводят поле ObjectType, но оно используется исключительно как метаинформация для среднего звена(клиента) и в реализации ссылочной целостности роли не играет.
Например, сценарий может быть таким:
1.На клиенте в дереве кликаем на какой то узел дерева
2.Получаем ObjectType узла.
3.По ObjectType понимаем какую форму нужно открыть для редактирования и какую хп вызвать для получения данных.ещё пол-шага и EAV у системного объекта?
...
Рейтинг: 0 / 0
16.11.2006, 17:30
    #34134342
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Petro123ещё пол-шага и EAV у системного объекта?
Что такое EAV?
...
Рейтинг: 0 / 0
16.11.2006, 17:36
    #34134363
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
>>>EAV
нашел.
Нет, здесь как раз таки без схемы "универсального каталога".
EAV подойдет когда на стадии проектирования нельзя определить все сущности и их атрибуты.
Так же подойдет в качестве реализации так называемых расширенных атрибутов.
Но если на стадии проектирования все сущности и их атрибуты известны, EAV не нужен.
...
Рейтинг: 0 / 0
16.11.2006, 17:37
    #34134370
Валентин К
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Все сущности и все аттрибуты не могут быть сразу известны в приципе, если проектируется система с предметной областью более 1 журнала.
...
Рейтинг: 0 / 0
16.11.2006, 21:02
    #34134869
parovoZZ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Ну, а чем плоха схема "на каждый справочник своё поле в оперативной таблице"? В неиспользуемых ссылках будет 0 или 1.
...
Рейтинг: 0 / 0
16.11.2006, 23:33
    #34135009
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Валентин КВсе сущности и все аттрибуты не могут быть сразу известны в приципе, если проектируется система с предметной областью более 1 журнала.
Конкретизирую: известны при проектировании на стадии очередного цикла разработки.
...
Рейтинг: 0 / 0
16.11.2006, 23:35
    #34135016
Роман Дынник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
parovoZZНу, а чем плоха схема "на каждый справочник своё поле в оперативной таблице"? В неиспользуемых ссылках будет 0 или 1.
Не понимаю (если только речь не идет о "модели Тенцера", она же EAV, она же универсальный каталог), нарисуй.
...
Рейтинг: 0 / 0
16.11.2006, 23:42
    #34135022
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Роман Дынник mv
Может, тебе ссылку на КАЖДУЮ табличку хранить? Те, на которые ссылки нет -
будут Null содержать.
-1
5000 сообщений и такое написать...
:) новый критерий оценки бумагомарания придуман - количество сообщений. Браво!
Иногда такое прочитаешь...
...
Рейтинг: 0 / 0
17.11.2006, 10:39
    #34135583
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ссылочная целостность в древовидных структурах
Роман Дынник Валентин КВсе сущности и все аттрибуты не могут быть сразу известны в приципе, если проектируется система с предметной областью более 1 журнала.
Конкретизирую: известны при проектировании на стадии очередного цикла разработки.
дык, хоть горшком обзови.
На стадии очередного цикла у листа дерева - записано:

Сущность :
Паровоз

Атрибуты :
- Длинна
- Ширина

Спроектировали систему. Заказчик хочет жлбавить атрибут - Цена.
Вот тебе и EAV нужен, чтобы не перепроетировать опять сначала (или DDL не делать)
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Ссылочная целостность в древовидных структурах / 25 сообщений из 34, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]