|
|
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Доброе утро. Есть вопрос: имеется таблица Лицо с наиболее общими атрибутами любых лиц и таблички физических лиц и юридических, в которых сидит ссылка на соответствующую запись в таблицу Лицо. Тут встал вопрос: либо оставлять две таблицы либо слить физиков и юриков в одну таблицу и добавить поле типа: физик/юрик, а в триггере в зависимости от типа пасти значений полей, который должны быть null/not null у физиков/юриков соответственно. А как сделана аналогичная вещь у Вас? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 10:05 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
У меня было две отдельных таблицы, одна для юриков, другая для физиков, но диапазоны ключей у них не пересекались. Например для юриков отрицательные, для физиков положительные. А в таблице договоров поле содержало соответствующее значение. (-) Нет связей между таблицами, целостность поддерживалось на уровне бизнес-логики. (+) Можно было описать любую ситуацию, договор заключен с физиком, с физиком, представителем юрика, с юриком. все, имхо ------------------------------------------------------- Заходи в саpай аккуpатно - могут быть сеpьезные гpабли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 10:36 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
А мне надо как раз обеспечить сквозную нумерацию физиков и юриков... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 10:43 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
А если появится третий тип ? Ну вдруг ! ИМХО: решение: одна таблица с признаком (но только не boolean). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 10:46 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Они и будут нумероваться непрерывно с -X до +Y. 0 - можно зарезервировать под код собственной фирмы или если собственных фирм несколько то выделить вокруг нуля диапазон от -100 до -1 для собственных сотрудников и от 0 до 20 для собственных фирм внутри холдинга. Потом диапазон в конечном счете будет не непрерывный, т.к. некоторых физиков или юриков потом могут удалить. все имхо, дело вкуса! ------------------------------------------------------- Заходи в саpай аккуpатно - могут быть сеpьезные гpабли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 10:49 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Одна таблица со сквозной нумерацией , общими атрибутами,служебной информацией и типом контрагента. Расшифровка типа - в отдельной таблице,набор флагов + дополнительные таблицы, специфичные для каждого типа(типов) контрагента + неспецифичные для типа контрагента таблицы (права доступа) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 11:49 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
To AlexeySH: именно так у меня сейчас и сделано (см. мой пост), а вот в чем минусы такого решения, плюсы и интересно обсудить. По-моему, при таком физическом дизайне более очевидна объектная иерархическая структура: лицо->юрик->банк, удобно использовать сквозную нумерацию. Других плюсов я пока не нахожу. Минусы вроде бы такие (не для меня): при появлении нового типа приходится добавлять новую таблицу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 12:31 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
2 Shtock : Ну есть вариант с узкой длинной таблицей атрибутов. в плюсе - отсутствие необходимости править структуру при добавлении очередного ОКДПХЗХУ :) в минусе неоходимость сборки "записей" из атрибутов для отчётов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 13:07 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Ух, вякну и я... Если бы ты юзал Bold for Delphi (или ECO для всяких там C#, Delphi 8 и проч), то твоя проблема решилась бы сама собой - введением абстрактного класса Персона, и двух дочерних - Юридическое лицо и Физическое лицо. См. прилагаемую схему. Такие струтуры Bold обычно реализует в одной таблице - причем утверждается, что "Отображение представления родителя на его потомка увеличивает производительность при поиске в одном из дочерних классов, т.к. база данных для этого открывает только одну таблицу." Это примерно то, что реляционщики называют денормализацией. Особенность реализации - такая таблица содержит Id таблицы и Id класса, ну, для Вас (при обычном, без - Bold - овском кодировании) до кучи можно ввести "Сквозной номер". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 14:39 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Во, блин, нарисовал фигню... В Юридическом лице все атрибуты, конечно, "Специальные". Извиняюсь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 14:40 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
To mv: Как Вы уже думаю поняли из моих постов. у меня практически так и сделано. Немного offtopic, но: если я правильно если у меня иерархия 10 классов, в каждом из которых по 10-20 атрибутов и все это будет "Отображение представления родителя на его потомка увеличивает производительность при поиске в одном из дочерних классов, т.к. база данных для этого открывает только одну таблицу", то я поимею таблицу о 200 полях? Я боюсь, что размеры rollback-сегмента будут крупноваты, а так как Bold если я правильно понял, держит все это в памяти, то хватит ли ее? - это риторический вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 14:48 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Shtock... то я поимею таблицу о 200 полях? Я боюсь, что размеры rollback-сегмента будут крупноваты, а так как Bold если я правильно понял, держит все это в памяти, то хватит ли ее? - это риторический вопрос. 1. Неправильно понял. Bold не копирует всю структуру базы в память. Он ее так (описанным выше образом) хранит. Более того, Bold при работе не копирует все объекты базы в память. Хотя этого можно добиться. 2. У тебя действительно в модели бизнес - объектов 10 - уровневая глубина наследования? 3. Существет возможность настроить отображения как родителя - на потомков, так и наоборот. Или вообще все по отдельным таблицам разбросать. Тут имеет смысл рассматривать в контексте конкретной задачи, сервера СУБД, объемов данных и т.п. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 14:58 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Если не жалко, покажи примерчик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 15:08 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
4 уровня - обычная ситуация ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 15:32 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
как у меня: 3 таблицы 1 Лицо - содержит общее для юр и физ + 2 поля ссылка на Юр, ссылка на Физ 2 Физ - только то что относиться к Физ 3 Юр - только то что относиться к Юр соответственно признак получился сам собой. ЗЫ. а лица бывают 3 типов физ, юр и пбюл(имеет признаки и юр и физ) но можно 1 таблица на всю БД, с полями f1, f2,f3 в которую можно писать всё что угодно, причем здесь достигается любая гибкость, а не только то, что видов лиц может быть сколько угодно... (см. как работают в Scala) это дело вкуса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 18:00 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
mvА Scala - это что? Scala - это Что. есть такая ERP система. писаная в COM+ зря я ее упоминул в суе. Чур меня чур Не когда не стройте БД как они строят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 18:15 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
> А мне надо как раз обеспечить сквозную нумерацию физиков и юриков Зачем, если не секрет? > или если собственных фирм несколько то выделить вокруг нуля диапазон от -100 > до -1 для собственных сотрудников и от 0 до 20 для собственных фирм внутри > холдинга. 100 и 20 - это такие магические числа? А почему не 10000 или 1000000? > Одна таблица со сквозной нумерацией , общими атрибутами, Позвольте поинтересоваться, какие атрибуты можно назвать общими для физического лица и юридического? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.09.2004, 19:14 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
To guest_20040621: единая система идентификации любого клиента. Пример общего атрибута: ИНН и много еще, если глубже рыть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 09:06 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
Код: 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. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 11:31 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
> To guest_20040621: единая система идентификации любого клиента. А зачем для этого сквозная нумерация? > Пример общего атрибута: ИНН Плохой пример. У меня, например, ИНН нет. И не предвидится. И не один я такой. Еще варианты? > и много еще, если глубже рыть. Вот я и прошу привести пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 15:09 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
guest_20040621> Плохой пример. У меня, например, ИНН нет. И не предвидится. И не один я такой. Еще варианты? Как минимум сквозной номер ))) (ну надо ему надо) адрес юридический (прописки), фактический... какой менеджер работает с клиентом. Дата создания. Размер скидок и много чего, зависит от бизнес модели. И по поводу не один я такой... Вы уверены? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 15:24 |
|
||
|
Физики и юрики
|
|||
|---|---|---|---|
|
#18+
> Как минимум сквозной номер ))) (ну надо ему надо) Блин, да я и прошу объяснить, зачем. Зачем-то ведь это было сделано? > адрес юридический (прописки), фактический... Хех, уважаемый, Вы уверены, что юридический адрес это то же самое, что и прописка? Про фактический - это отдельная песня. Вы что под ним подразумеваете? > какой менеджер работает с клиентом. Дата создания. Размер скидок и много > чего, зависит от бизнес модели. Это не атрибуты физического или юридического лица. Это атрибуты ваших бизнес-процессов. > Вы уверены? Абсолютно. Во-первых, человек не с рождения становится налогоплательщиком, правда? Во-вторых, в странах, отличных от РФ, - другая система идентификации налогоплательщиков. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2004, 15:43 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=32692015&tid=1545088]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
145ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
70ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 487ms |

| 0 / 0 |
