|
|
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
Добрый день, коллеги. Как бы Вы спроектировали БД для следующих моделей данных: 1. Есть два отношения A и B, представляют две разных сущности. Сущность A должна иметь минимум одно соединение с отношением B. Причём если для конкретной записи из A существует несколько записей в B, то нужно уметь отличать основную связь (обязательную) от остальных. 2. Обобщаю первую модель. Для любого A может существовать несколько заранее определённых видов связей: обязательный (как выше, для каждого А такя связь может бьть только одна), опциональная связь 1:1 (может быть несколько) и опциональная связь 1:N (может быть несколько). Множества связей для каждого A не должны пересекаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 09:36 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
БуГаГа, а множества связей для разных А могут пересекаться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 10:16 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
давайте рассмотрим оба варианта, т.е. могут и не могут. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 10:21 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
БуГаГа, что-то вы свой вариант забыли выложить вариант для "могут" вкраце (если я правильно понял, отношение становится M:N): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 12:15 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
Везде вместо RTipe% читать RType% :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 12:18 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
adv, что-то вы свой вариант забыли выложить Да вот что-то не могу придумать подходящий вариант, получается примерно как у вас - через триггеры. Нет ли решения с естественной "нормализацией" данных, т.е. просто через отношения связей и FK (стандартные контсреинты)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 12:30 |
|
||
|
связть между двумя отношениями с обязательным полем...
|
|||
|---|---|---|---|
|
#18+
БуГаГа, решение в принципе есть, через таблицу связей с указанием типа и фильтрованные уникальные индексы. Проблема только с обязательной связью 1-1, она получается в такой постановке циклическая, и начинаются проблемы при вставке и удалении. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2011, 12:48 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=37458837&tid=1542007]: |
0ms |
get settings: |
6ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
270ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
27ms |
get tp. blocked users: |
1ms |
| others: | 195ms |
| total: | 520ms |

| 0 / 0 |
