|
|
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Проектирую первую в своей жизни базу. Предметная область - общество защиты животных, точнее его отчетная сторона. Большинство животных находятся на передержке у людей дома. Имеются следующие сущности: сбор на пожертвование, человек и животное. Животное имеет ссылку на человека (куратора). Планировалось у сбора сделать ссылку на животное. Но затем я осознала, что нужно добавить такую сущность, как приют. На приют также собираются пожертвования (например, сбор на корм). Вопрос - как спроектировать базу, чтобы в сборе указывать, куда идут деньги (приют или отдельное животное)? Была идея объединить приют и человека, как одну сущность, но на человека не должны идти пожертвования, только на животное. Объединить животное и приют также нельзя, т.к. у них абсолютно разные атрибуты. Создавать в таблице сбора несколько полей также не представляется мне хорошим вариантом. Очень надеюсь на помощь. Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 00:16 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Сбор идёт на конкретное животное? С одного сбора могут кормиться несколько животных? Может с одного сбора кормиться и животное и приют? Связаны животные с приютами? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 00:22 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Сбор идет либо на животное, либо на приют. Нет, один сбор - одно животное\приют. Животные, обитающие в приюте, связаны с ним. Остальные животные на передержке. Еще есть состояния: потерян, нуждается в передержке и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 00:46 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryНет, один сбор - одно животное\приют. Конкретное животное или "какое-нибудь животное"? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 00:54 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Сбор идет на конкретное животное. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 00:57 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryОбъединить животное и приют также нельзя, т.к. у них абсолютно разные атрибуты. Но можно ввести новую сущность "получатель денег", на которую и будут ссылаться и животные и приюты. Другой вариант: два поля в таблице сборов "тип получателя" и "ссылка". Вряд ли у тебя будет конкурентная нагрузка, так что ведение ссылочной целостности триггерами возможно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 01:04 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Большое спасибо за помощь. Я склонялась к первому варианту, но думала, что может кто посоветует как-нибудь изменить структуру базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 01:15 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryЗдравствуйте! Проектирую первую в своей жизни базу. Предметная область - общество защиты животных, точнее его отчетная сторона. Большинство животных находятся на передержке у людей дома. Имеются следующие сущности: сбор на пожертвование, человек и животное. Животное имеет ссылку на человека (куратора). Планировалось у сбора сделать ссылку на животное. Но затем я осознала, что нужно добавить такую сущность, как приют. На приют также собираются пожертвования (например, сбор на корм). Вопрос - как спроектировать базу, чтобы в сборе указывать, куда идут деньги (приют или отдельное животное)? Была идея объединить приют и человека, как одну сущность, но на человека не должны идти пожертвования, только на животное. Объединить животное и приют также нельзя, т.к. у них абсолютно разные атрибуты. Создавать в таблице сбора несколько полей также не представляется мне хорошим вариантом. Очень надеюсь на помощь. Заранее спасибо! Пока еще не поздно, задумайтесь о том, что существует теория баз данных. И проектирование баз данных)) Животное может иметь вес, но не может иметь ссылку на человека))) Перестаньте употреблять слово "ссылка", так как это просто неудачный способ моделирования связей между сущностями. Вы же говорите "имеются следующие сущности". Точно так же нужно говорить и о связях между сущностями. Сущности: Человек {Фамилия, ...} Животное {Кличка, ...} Приют {Название, ...} Тип пожертвования {Наименование} Вид животного {Наименование} Пожертвование {Сумма, ...} Связи: Человек --- Сделал/Сделано от --> Пожертвование Приют --- Для которого сделано/Для --> Пожертвование Животное --- Для которого сделано/Для --> Пожертвование Тип пожертвования --- Относится к/Имеет --> Пожертвование Вид животного --- Относится к/Имеет --> Животное Приют --- В котором содержится/Содержится в --> Животное Человек --- У которого содержится/Содержится у --> Животное ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 15:17 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
"Кто тебя учил? Покажи мне. И я разорву его, как Тузик грелку." ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 15:24 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Чал, вы уже когда-нибудь заткнёте фонтан? Дебил - это оптимистичная оценка ваших способностей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 16:40 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
guest_20040621Чал, вы уже когда-нибудь заткнёте фонтан? Дебил - это оптимистичная оценка ваших способностей. )))) Дебилы, как раз, не переживают так, как Вы из-за отсутсвия знаний. А Вы очень переживаете, что у Вас были такие вот учителя. Но, есть другой вариант - учиться у профессионалов. Вопросы задавать, если что-то не понятно. А Вы просто обижаетесь все время на свои незнания. И пишите глупости) Пожалуйста, пишите по существу, если есть что сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 17:44 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
> не переживают так, как Вы Тебя не остановило даже то, что ТС открыто написала, что это её первая база данных. Скажи, где ты работаешь, я, вопреки природной лени, лично приду к твоему непосредственному начальнику и расскажу о твоей квалификации. Быдло должно подметать трамвайные пути, а не гадить в форумах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 18:19 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Бредятина, Я обязательно учту. Вы правы, нужно называть вещи своими именами, и делать это грамотно, по крайней мере, стремиться. Простите, если Ваши глаза полезли на лоб от моей некомпетентной речи, я только учусь, и всегда буду рада Вашей критике. Спасибо. И если по сабжу, Вы не могли бы чего-нибудь посоветовать? Я была бы очень признательна. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 18:23 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurry, Вам Сибиряков посоветовал разумную вещь - ввести супертип для всех потенциальных получателей пожертвований. Вам в этом предложении что-то непонятно? Или Вы хотите собрать разные мнения? Ждать от Бредятины практических советов не рекомендую ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 18:39 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
Кот МатроскинВам Сибиряков посоветовал разумную вещь - ввести супертип для всех потенциальных получателей пожертвований. Вам в этом предложении что-то непонятно? Или Вы хотите собрать разные мнения? Я последовала его совету). Но тем не менее, интересно было бы узнать и другие мнения, если они конечно есть. Кот Матроскин Ждать от Бредятины практических советов не рекомендую ;) Да, мне говорили, что этот персонаж здесь широко известен не благодаря практическим советам) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 19:31 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryЗдравствуйте! Проектирую первую в своей жизни базу. Предметная область - общество защиты животных, точнее его отчетная сторона. Большинство животных находятся на передержке у людей дома. Имеются следующие сущности: сбор на пожертвование, человек и животное. Животное имеет ссылку на человека (куратора). Планировалось у сбора сделать ссылку на животное. Но затем я осознала, что нужно добавить такую сущность, как приют. На приют также собираются пожертвования (например, сбор на корм). Вопрос - как спроектировать базу, чтобы в сборе указывать, куда идут деньги (приют или отдельное животное)? Была идея объединить приют и человека, как одну сущность, но на человека не должны идти пожертвования, только на животное. Объединить животное и приют также нельзя, т.к. у них абсолютно разные атрибуты. Создавать в таблице сбора несколько полей также не представляется мне хорошим вариантом. Очень надеюсь на помощь. Заранее спасибо!чот не верицца..)) имхо в Вашем случае животное место человек все остальное - производное время в т.ч. 16586087 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 19:31 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
1001, 1001животное место человек все остальное - производное время в т.ч. 16586087 Если честно, я не поняла, что вы имеете ввиду. Время? Какое время? 1001чот не верицца..)) Почему не верится? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 19:44 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurry Но тем не менее, интересно было бы узнать и другие мнения, если они конечно есть.Конечно есть и даже на этой же странице http://www.sql.ru/forum/67152/nasledovanie-v-baze-dannyh ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 19:46 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurry1001, 1001животное место человек все остальное - производное время в т.ч. 16586087 Если честно, я не поняла, что вы имеете ввиду. Время? Какое время? 1001чот не верицца..)) Почему не верится? время С...По ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 19:57 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
SERG1257, Спасибо) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 20:06 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryБредятина, Я обязательно учту. Вы правы, нужно называть вещи своими именами, и делать это грамотно, по крайней мере, стремиться. Простите, если Ваши глаза полезли на лоб от моей некомпетентной речи, я только учусь, и всегда буду рада Вашей критике. Спасибо. И если по сабжу, Вы не могли бы чего-нибудь посоветовать? Я была бы очень признательна. Надеюсь Вы просто пошутили. А не поверили местным "профессионалам" о моей способности давать практические советы)) Я Вам дал схему БД, Вы заметили? Теперь поясню чем это отличается от "двух полей в таблице", о которых Вам написал Дмитрий Сибиряков (в одном поле Вам предложили хранить имя одного из отношений, с помощью которых моделируются две сущности (Приют и Животное), а в другом (которое является внешним ключом) значение первичного ключа конкретного экземпляра этой сущности (можно использовать пару понятий "тип сущности" и "сущность" вместо "сущность" и "экземпляр сущности"). В случае классической БД нет никаких "полей в таблицах", а есть, как видите, две связи (попутно еще раз подчеркну, что у сущностей есть их собственные свойства, и никаких "ссылок" среди этих свойств нет). Важно, что и триггеры в этом случае не нужны. Вполне достаточно обойтись декларативными ограничениями целостности (запретить создавать связи со стороны Пожертвования). И просто пользоваться функцией "Создать новый экземпляр и связать" со стороны "субъекта" (Приюта или Животного). Запомните несколько простых истин: 1) Связи всегда бинарные. 2) Связи всегда двухсторонние. 3) У связей нет никаких свойств (иначе они стали бы сущностями). 4) Чен серьезно заблуждается в своей статье о модели сущность-связь, то, что он называет связями, является сущностями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 20:49 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
guest_20040621> не переживают так, как Вы Тебя не остановило даже то, что ТС открыто написала, что это её первая база данных. Скажи, где ты работаешь, я, вопреки природной лени, лично приду к твоему непосредственному начальнику и расскажу о твоей квалификации. Быдло должно подметать трамвайные пути, а не гадить в форумах. Именно это и позволяет надеяться, что она не закончит процесс познания БД тем, что будет объявлять дебилами людей, которые понимают, что у собаки нет ссылки на человека)))... Теперь, что касается этого Вашего странного высказывания о ключах. Напомню, что "ключи" - это не элемент структуры, о ограничения целостности. Только первобытные люди могли создавать структуру с помощью не структуры, а ограничений целостности))) И еще нынешние специалисты в области "реляционных систем"))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 20:53 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryКот МатроскинВам Сибиряков посоветовал разумную вещь - ввести супертип для всех потенциальных получателей пожертвований. Вам в этом предложении что-то непонятно? Или Вы хотите собрать разные мнения? Я последовала его совету). Но тем не менее, интересно было бы узнать и другие мнения, если они конечно есть. Кот Матроскин Ждать от Бредятины практических советов не рекомендую ;) Да, мне говорили, что этот персонаж здесь широко известен не благодаря практическим советам) Теперь, давайте я встану на Вашу сторону, и попробую объяснить зачем в самом начале пути Вы используете абсолютно бесперспективную технологию. Итак: "Да, может быть Вы и правы. Но, в моем приложении необходима алгебра! Поэтому я выбрала реляционную технологию." К сожалению, подкрепить это высказывание ничем невозможно. Ни я, ни Вы, ни Ваш преподаватель, никто не сможет объяснить зачем в этом приложении нужна алгебра))) Более того, еще никому (кроме меня) не удалось обнаружить ни одного приложения БД, для которого была бы нужна алгебра)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 21:09 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryКот МатроскинВам Сибиряков посоветовал разумную вещь - ввести супертип для всех потенциальных получателей пожертвований. Вам в этом предложении что-то непонятно? Или Вы хотите собрать разные мнения? Я последовала его совету). Но тем не менее, интересно было бы узнать и другие мнения, если они конечно есть. Кот Матроскин Ждать от Бредятины практических советов не рекомендую ;) Да, мне говорили, что этот персонаж здесь широко известен не благодаря практическим советам) Разумеется, lemurry, другие мнения касаются только выбранной Вашим преподавателем и навязанной Вам технологии) А от таких персонажей нужно держаться подальше - это Вам правильно объяснили) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 21:17 |
|
||
|
Одна ссылка для 2х разных сущностей
|
|||
|---|---|---|---|
|
#18+
lemurryДа, мне говорили, что этот персонаж здесь широко известен не благодаря практическим советам) А что же Вы не сказали - чем? Значит Вас, на самом деле, базы данных не интересуют, раз начинаете с каких-то тайн))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2014, 21:29 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=38749575&tid=1540800]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
25ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 237ms |
| total: | 369ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...