powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Простейшая схема БД из 3 сущностей
51 сообщений из 51, показаны все 3 страниц
Простейшая схема БД из 3 сущностей
    #39960659
leshqow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть пациенты, диагнозы и случаи. У меня возникли сомнения по поводу связей. У случая может быть много диагнозов, но один пациент, т.е. связь от случая к пациентам один к одному ? Прошу совета по связям в схеме.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960676
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у тебя "случай - диагноз" это "1 - М", то вместо поля iddiagnosis в таблице cases должно быть поле idcase в таблице diagnosis, которое должно быть внешним ключом к таблице cases. И в таблице пациентов поле id_case не нужно.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960680
leshqow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переработал схему. Пациент - случай - диагноз. У пациента может быть много случаев, у случая много диагнозов.
Я же смогу сделать выборку ID случая, фио пациента, код диагноза, имя диагноза, дата открытия и закрытия если сгенерирую эту схему?
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960689
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqowЯ же смогу сделать выборку

Попробуй. Это не займёт много времени, а личный опыт - лучший учитель.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960717
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqow
Переработал схему. Пациент - случай - диагноз. У пациента может быть много случаев, у случая много диагнозов.

Да, теперь все ОК.

leshqow

Я же смогу сделать выборку ID случая, фио пациента, код диагноза, имя диагноза, дата открытия и закрытия если сгенерирую эту схему?

Не совсем. У тебя одному пациенту и случаю может соответствовать много диагнозов. Поэтому по случаю ты однозначно диагноз не выберешь.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960739
leshqow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но в таблице diagnosis будет дублирование значений, каждому id случая будут заболевания и коды повторяться.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960752
Фотография Ennor Tiegael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqow
Но в таблице diagnosis будет дублирование значений, каждому id случая будут заболевания и коды повторяться.
Не должно бы. Если визит+диагноз это натуральный ключ, то дважды за визит один и тот же диагноз записать не получится, а то что пациенту уже 15 лет рекомендуют бросить нюхать клей не первый раз диагностируют одно и то же, ну так это нормально. Опять-таки, дата диагноза будет разная между визитами.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960758
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqow
Но в таблице diagnosis будет дублирование значений, каждому id случая будут заболевания и коды повторяться.

Это и есть 1-to-Many. Если не хочешь, чтобы одному случаю соответствовало несколько диагнозов с одинаковыми кодами, то добавь unique constraint: ("ид случая", "код диагноза") на таблицу диагнозов.

И еще. Если у каждого диагноза с определенным кодом всегда одно и то же имя, то таблицу диагнозов надо разбивать (декомпозировать) на две. ("ид диагноза" (ПК), "код диагноза", "ид случая" (ФК)) + ("код диагноза" (ПК), "название диагноза"). Иначе нарушается 3 НФ.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960772
leshqow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
leshqow
Но в таблице diagnosis будет дублирование значений, каждому id случая будут заболевания и коды повторяться.

Это и есть 1-to-Many. Если не хочешь, чтобы одному случаю соответствовало несколько диагнозов с одинаковыми кодами, то добавь unique constraint: ("ид случая", "код диагноза") на таблицу диагнозов.

И еще. Если у каждого диагноза с определенным кодом всегда одно и то же имя, то таблицу диагнозов надо разбивать (декомпозировать) на две. ("ид диагноза" (ПК), "код диагноза", "ид случая" (ФК)) + ("код диагноза" (ПК), "название диагноза"). Иначе нарушается 3 НФ.

Согласен, теперь должно быть окончательно.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960780
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqow
Согласен, теперь должно быть окончательно.

Да, отлично. Давай зачетку
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960809
leshqow
Я же смогу сделать выборку ID случая, фио пациента, код диагноза, имя диагноза, дата открытия и закрытия если сгенерирую эту схему?

смотря по какому полю искать
но схема то правильная
обращение клиента надо зафиксировать (случай)
а всё что он дальше делает (поход по кабинетам) фиксируется на этом случае
ну вот по фио + случай и найдёте

зы: а куда serial то подевался у вас? верните serial везде!
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960906
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
leshqow
Есть пациенты, диагнозы и случаи

А что такое "случаи"? Чему в реальной жизни они соответствуют?
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960984
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
А что такое "случаи"? Чему в реальной жизни они соответствуют?

Это как раз то за что студенты должны платить денежку, ибо на каждого студента у преподавателя свой вариант.
Реальная жизнь тут никаким боком.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960987
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
leshqow
Есть пациенты, диагнозы и случаи

А что такое "случаи"? Чему в реальной жизни они соответствуют?


https://dictionary.cambridge.org/dictionary/english/case case noun (PROBLEM)

a problem, a series of events, or a person being dealt with by police, doctors , lawyers, etc.


Если опираться на это, то, можно трактовать как "обращение к врачу". Тогда логично, один кейс - несколько диагнозов: рак, ВИЧ, и гемморой. Только тогда следует "пациент - кейс" делать тоже "1 -- М".
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39960990
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Если опираться на это, то, можно трактовать как "обращение к врачу".

Если трактовать как обращение к врачу, то становится ясно, что сущность "случай" как минимум нуждается в редизайне, да и другие тоже. Насколько я в курсе, врачи делят обращения на первичные и последующие. Первичное - это когда пришёл с жалобой, последующие - когда идёт лечение. При этом в ходе последующих обращений могут меняться диагнозы, а могут возникать новые жалобы, в том числе никак не связанные с предыдущим. Вполне может оказаться, что возникла новая жалоба со своим диагнозом в то время, когда из двух изначальных один уже вылечен, а другой в процессе. Если увязывать обращения в отдельную сущность set of events, то придётся делать ещё некую сущность "визиты к врачу", причём связанную со "случаями" как многие ко многим, и тогда становится не очень понятно отличие "случая" от "диагноза". Об этом я и намекнул топикстартеру предыдущим постом.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961007
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer

Если трактовать как обращение к врачу, то становится ясно, что сущность "случай" как минимум нуждается в редизайне, да и другие тоже. Насколько я в курсе, врачи делят обращения на первичные и последующие. Первичное - это когда пришёл с жалобой, последующие - когда идёт лечение. При этом в ходе последующих обращений могут меняться диагнозы, а могут возникать новые жалобы, в том числе никак не связанные с предыдущим. Вполне может оказаться, что возникла новая жалоба со своим диагнозом в то время, когда из двух изначальных один уже вылечен, а другой в процессе. Если увязывать обращения в отдельную сущность set of events, то придётся делать ещё некую сущность "визиты к врачу", причём связанную со "случаями" как многие ко многим, и тогда становится не очень понятно отличие "случая" от "диагноза". Об этом я и намекнул топикстартеру предыдущим постом.


Я немного неудачно выразился. Лучше сказать: "это какая-то проблема, по поводу которой мембер обратился к врачу". Приходит, например, кто-то в поликлинику и говорит: "Доктор, у меня член позеленел". Это кейс. Он со своим зеленым членом может ходить туда дюжину раз и ему полджины раз ему при этом поставят разные диагнозы - это уже будут соответственно "визиты" и "диагнозы" и все эти "визиты" и "диагнозы" будут относиться к одному и тому же кейсу "зеленый член" . Т.ч. если крайняя схема и не совсем до конца верная, то все-таки где-то близко к тому.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961011
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Я немного неудачно выразился. Лучше сказать: "это какая-то проблема, по поводу которой мембер обратился к врачу". Приходит, например, кто-то в поликлинику и говорит: "Доктор, у меня член позеленел". Это кейс.

То есть Вы о том понятии, которое я назвал "жалоба". Тогда вопрос в том, что пациент часто приходит с несколькими жалобами, и эти жалобы:

  • могут относиться к одному диагнозу (доктор, у меня кашель, насморк и температура)
  • могут относиться к разным диагнозам (доктор, у меня кашель, насморк, температура и член позеленел)
  • жалоба может относиться к нескольким диагнозам (доктор, у меня кашель - батенька, так ведь у Вас ОРВИ и вдобавок хронический бронхит)
  • жалоба может вообще ни к чему не относиться (доктор, у меня в боку чешется - так почешите и идите домой).
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961016
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
В общем, в моём представлении "случаев" как объектов учёта нет. Это трепологическое слово - "пацаны, а вот был такой случай, пришёл пациент с колитом..." А в БД должны быть визиты к врачу, анамнез (те самые жалобы), диагнозы, лечение - примерно так.

"Кейс" это все-таки не "жалоба". Но с тем что выше я согласен - понятие и вправду черезчур общее, чтобы вести ему учет, именно что "вот был такой случай". Если "Доктора Хауза" посмотреть на англ., то там как раз слово "case" постоянно используется, и, вот, по сути, там как раз одна серия - это один "кейс" :))
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961019
case - факт обращения пациента в больницу
все доктора, диагнозы, кабинеты привязываются туда
Алексей Роза
leshqow
Я же смогу сделать выборку ID случая, фио пациента, код диагноза, имя диагноза, дата открытия и закрытия если сгенерирую эту схему?

смотря по какому полю искать
но схема то правильная
обращение клиента надо зафиксировать (случай)
а всё что он дальше делает (поход по кабинетам) фиксируется на этом случае
ну вот по фио + случай и найдёте

зы: а куда serial то подевался у вас? верните serial везде!
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961059
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
case - факт обращения пациента в больницу
все доктора, диагнозы, кабинеты привязываются туда

Это понятно, но речь о другом. В понедельник пришел человек к венерологу (зеленый член). В четверг он же пришел к проктологу (попа болит). Это один кейс или два разных? Учитывая при этом, что на след. неделе может оказаться, что оба этих симптома у него из-за одного и того же заболевания. По-моему, и вправду, тут лучше просто отказаться от такой сущности как "кейс" и фиксировать только конкретные факты: "пришел", "ушел", "вставили ректальный зонд", "ампутировали голову" и т.п.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961063
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
leshqow,

Есть пациенты, диагнозы и случаи.
Да есть.

Человек заболел в феврале, пришел к семейному врачу, он поставил ему диагноз ангина с присвоением кода по МКБ-10: «J03.0». После этого человек становится больным (на иностранном языке - пациентом). Лечился он две недели, соответственно, приходил к врачу 4 раза. Это будут посещения . А в целом это один случай заболевания ангиной и 4 посещения.

В ноябре этого же года этот же человек опять объелся мороженным и пришел к своему семейному врачу, который снова поставил ему диагноз ангина... На этот раз он приходил к врачу три раза. Это второй случай заболевания ангиной и три посещения.

Таким образом, правильным ответом на вопрос: "сколько случаев заболеваний ангиной было за год" будет 2 заболевания, а на вопрос "сколько было посещений за год" - 7 посещений.

Если у этого пациента одновременно (или не совсем одновременно) были еще какие-то заболевания, например, пока шел в поликлинику с ангиной, упал и сломал себе палец, то это будет другое заболевание со своим случаем. Поскольку его лечить будет травматолог, а не семейный врач, то это будут посещения, независимые от посещений по случаю ангины.

Теперь на вопрос "Сколько всего было случаев заболеваний за год" нужно ответить "За год было три случая заболеваний". Или с расшифровкой "из них, два случая заболеваний ангиной и один случай перелома пальца".

Следовательно, для учета случаев заболеваний достаточно двух таблиц: больной и случай.

Каждый больной может не болеть, или болеть один или несколько раз.
Каждое заболевание характеризуется кодом МКБ10 (диагнозом) и является одним случаем заболевания. Каждый случай заболевания относится к одному и только одному больному.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961065
fkthat
Алексей Роза
case - факт обращения пациента в больницу
все доктора, диагнозы, кабинеты привязываются туда

Это понятно, но речь о другом. В понедельник пришел человек к венерологу (зеленый член). В четверг он же пришел к проктологу (попа болит). Это один кейс или два разных? Учитывая при этом, что на след. неделе может оказаться, что оба этих симптома у него из-за одного и того же заболевания. По-моему, и вправду, тут лучше просто отказаться от такой сущности как "кейс" и фиксировать только конкретные факты: "пришел", "ушел", "вставили ректальный зонд", "ампутировали голову" и т.п.

разные естественно кейсы.
если оба из одной болезни, значит один кейс закроется, только и всего.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961067
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
если оба из одной болезни, значит один кейс закроется, только и всего.

А второй так и будет открытым, даже когда вылечат? А по-хорошему, это надо у врачей спросить - есть ли у них такое понятие и если есть, то что они в его значение вкладывают.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961068
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-l
lЧеловек заболел в феврале, пришел к семейному врачу, он поставил ему диагноз ангина с присвоением кода по МКБ-10: «J03.0». После этого человек становится больным (на иностранном языке - пациентом). Лечился он две недели, соответственно, приходил к врачу 4 раза. Это будут посещения . А в целом это один случай заболевания ангиной и 4 посещения.

Если он снова заболел не через полгода, а всего через неделю?
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961079
fkthat
Алексей Роза
если оба из одной болезни, значит один кейс закроется, только и всего.

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

есть такая вещь, как "карточка пациента". Туда и пишутся все события.
Как один бесконечный кейс. Но с конечными кейсами интереснее.
есть added и closed...
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961096
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-lТаким образом, правильным ответом на вопрос: "сколько случаев заболеваний ангиной было за
год" будет 2 заболевания

Отличный пример неправильно поставленного вопроса. На самом деле это должно звучать
"сколько заболеваний ангиной было диагностировано" и считаться из таблицы диагнозов.


PS: 100500 человек за год болели ангиной. Двое из них обратились к врачу. Одному из них был поставлен диагноз "простуда", а не "ангина". Сколько случаев насчитает эта база?..
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961104
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Роза
есть такая вещь, как "карточка пациента". Туда и пишутся все события.
Как один бесконечный кейс.

Так о том был и разговор, что, выходит, что отдельного понятия как "кейс" не нужно. Хотя, если в случае стационара еще вполне можно определить, как между "вписали" и "выписали", то в случае поликлиники получится, что все время пока пациент там приписан это всего один кейс и есть.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961121
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fkthat,

Если он снова заболел не через полгода, а всего через неделю?

Любая болезнь длится с Дата1 по Дата2. Если человек болеет ангиной, то пока не вылечится от нее, он не может заболеть ангиной еще раз. Начиная с Дата3 > Дата2 он может заболеть еще раз тем же самым заболеванием. Как быть в этом случае?

Есть еще понятие: заболел впервые в жизни . Этот случай отмечают знаком «+». Если он заболел этим же заболеванием еще раз, то этот случай отмечают знаком «–». В случае хронической болезни, случаем может быть обострение болезни, и этот случай должен быть отмечен знаком «–». Например, ишемическая болезнь сердца. «Прихватило», пришел к врачу, попил лекарства, может быть, полежал в стационаре, «Отхватило». Жизнь снова наладилась до следующего «Прихватило». Случай первого «Прихватило» должен быть отмечен знаком «+», все остальные случаи должны быть отмечены знаком «–».

Но есть еще одно понятие – острые заболевания (например, ангина (J03.0)), которые всегда помечают знаком «+». Т.е. сколько бы раз один и тот же человек не болел ангиной(J03.0), все эти случаи отмечают знаком «+».

Поэтому, сущность «Случай» имеет атрибуты: код больного, к которому относится данный случай, код заболевания по МКБ (диагноз), период болезни, признак «впервые в жизни» и, возможно, еще какие-то.

Здесь еще упоминали о «Карте больного». Хочу сказать, что это не одна сущность. Что только и как только не пишут в эту карту. А вопрос: "Сколько случаев ангины было в этом периоде у этого врача" ставит в тупик.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961147
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

100500 человек за год болели ангиной. Двое из них обратились к врачу. Одному из них был поставлен диагноз "простуда", а не "ангина". Сколько случаев насчитает эта база?.

Я не знаю, о какой базе идет речь и что она считает. В Вашем примере будет зафиксировано два случая:

J03.0 – острый тонзиллит (ангина)
J03.9 – неуточненный тонзиллит (ангина) – или, как Вы сказали, "простуда".

Остальные, даже если их 1000000000500, может быть болели ангиной, а может быть ковидом19.
Как учесть то, о чем мы не знаем?

Отличный пример неправильно поставленного вопроса.

Нужно просто немного разобраться в предметной области. А Вы выхватили одно предложение, не разобравшись с понятиями «случай» и «диагноз».

На самом деле это должно звучать "сколько заболеваний ангиной было диагностировано" и считаться из таблицы диагнозов.

Конечно, можно бесконечно долго рассуждать о заболеваниях из таблицы диагнозов, но в предметной области вопрос звучит так: "сколько случаев заболеваний ангиной было …" или более формально:

Код: sql
1.
select count(*) from "Случаи" where (icd  between 'J03.' and 'J03.99') and …


и никаких таблиц диагнозов!
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961151
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-l
fkthat,

Если он снова заболел не через полгода, а всего через неделю?

Любая болезнь длится с Дата1 по Дата2. Если человек болеет ангиной, то пока не вылечится от нее, он не может заболеть ангиной еще раз. Начиная с Дата3 > Дата2 он может заболеть еще раз тем же самым заболеванием. Как быть в этом случае?

Есть еще понятие: заболел впервые в жизни . Этот случай отмечают знаком «+». Если он заболел этим же заболеванием еще раз, то этот случай отмечают знаком «–». В случае хронической болезни, случаем может быть обострение болезни, и этот случай должен быть отмечен знаком «–». Например, ишемическая болезнь сердца. «Прихватило», пришел к врачу, попил лекарства, может быть, полежал в стационаре, «Отхватило». Жизнь снова наладилась до следующего «Прихватило». Случай первого «Прихватило» должен быть отмечен знаком «+», все остальные случаи должны быть отмечены знаком «–».

Но есть еще одно понятие – острые заболевания (например, ангина (J03.0)), которые всегда помечают знаком «+». Т.е. сколько бы раз один и тот же человек не болел ангиной(J03.0), все эти случаи отмечают знаком «+».

Поэтому, сущность «Случай» имеет атрибуты: код больного, к которому относится данный случай, код заболевания по МКБ (диагноз), период болезни, признак «впервые в жизни» и, возможно, еще какие-то.

Здесь еще упоминали о «Карте больного». Хочу сказать, что это не одна сущность. Что только и как только не пишут в эту карту. А вопрос: "Сколько случаев ангины было в этом периоде у этого врача" ставит в тупик.

Нет. В здешней схеме "диагноз" это не код заболевания "триппер", а отдельный факт диагностирования у больного заболевания "триппер". Триппер один на всех, а болеть им пациент может каждый год по разу, и в этой схеме каждый этот раз это будет отдельная сущность "диагноз". Но что тогда в этой схеме "кейс" становится непонятным. Я все больше склоняюсь к тому, что @softwarer прав, и сущность "кейс" тут просто лишняя.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961174
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
fkthat,

1.Ключевой фразой softwarer я считаю фразу "сущность "случай" как минимум нуждается в редизайне, да и другие тоже".

2.Из первого поста видно, что ТС только осваивает предметную область. Поэтому на его сущности не стоит ориентироваться. Мне кажется, что я достаточно просто и понятно описал понятия случая, диагноза и посещения, на которых строится вся медицинская статотчетность.

3.Именно сущность "случай" содержит факты заболеваний и хранит всю необходимую и достаточную информацию, например, для получения формы 12 "Общая заболеваемость» из обязательной статотчетности. Если очень хочется добавьте в эту сущность атрибут "Диагноз" с типом текст. Сущность "Диагноз" является у телеги 5-м колесом.

Поясню.

Нет. В здешней схеме "диагноз" это не код заболевания "триппер", а отдельный факт диагностирования у больного заболевания "триппер".

Никто не пишет "триппер", а пишут код А54.х, где х = 0..9.

Например, врач ставит больному диагноз "Гонококковый фарингит", этот диагноз имеет код МКБ-10 А54.5.

Врач не может от себя написать диагноз, формулировка диагноза должна соответствовать статье (статьям) МКБ.

Т.е. диагноз (текст) и код заболевания должны соответствовать соответствующей статье МКБ (Международная классификация болезней). Сейчас действует 10 пересмотр МКБ. С 1 января 2021 должен действовать 11 пересмотр МКБ, а может и нет. Слишком велика инерционность. От министра здравоохранения до сельского терапевта.

Обработка данных, как это странно не звучит, должна осуществляется по коду заболевания, а не по тексту! Тем более, если текст вводится с клавиатуры, а не выбирается из справочника. Приведу примеры из области, которую Вы предложили:

A54.0 - Гонококковая инфекция нижних отделов мочеполового тракта без абсцедирования периуретральных или придаточных желез
A54.1 - Гонококковая инфекция нижних отделов мочеполового тракта с абсцедированием периуретральных и придаточных желез
A54.2 - Гонококковый пельвиоперитонит и другая гонококковая инфекция мочеполовых органов
Гонококковый(ое):
• эпидидимит † (N51.1*)
• воспалительное заболевание тазовых органов у женщин † (N74.3*)
• орхит † (N51.1*)
• простатит † (N51.0*)
Исключен: гонококковый перитонит (A54.8)

. . .
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961178
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Wlr-l
fkthat,

1.Ключевой фразой softwarer я считаю фразу "сущность "случай" как минимум нуждается в редизайне, да и другие тоже".

2.Из первого поста видно, что ТС только осваивает предметную область. Поэтому на его сущности не стоит ориентироваться. Мне кажется, что я достаточно просто и понятно описал понятия случая, диагноза и посещения, на которых строится вся медицинская статотчетность.

3.Именно сущность "случай" содержит факты заболеваний и хранит всю необходимую и достаточную информацию, например, для получения формы 12 "Общая заболеваемость» из обязательной статотчетности. Если очень хочется добавьте в эту сущность атрибут "Диагноз" с типом текст. Сущность "Диагноз" является у телеги 5-м колесом.

Поясню.

Нет. В здешней схеме "диагноз" это не код заболевания "триппер", а отдельный факт диагностирования у больного заболевания "триппер".

Никто не пишет "триппер", а пишут код А54.х, где х = 0..9.

Например, врач ставит больному диагноз "Гонококковый фарингит", этот диагноз имеет код МКБ-10 А54.5.

Врач не может от себя написать диагноз, формулировка диагноза должна соответствовать статье (статьям) МКБ.

Т.е. диагноз (текст) и код заболевания должны соответствовать соответствующей статье МКБ (Международная классификация болезней). Сейчас действует 10 пересмотр МКБ. С 1 января 2021 должен действовать 11 пересмотр МКБ, а может и нет. Слишком велика инерционность. От министра здравоохранения до сельского терапевта.

Обработка данных, как это странно не звучит, должна осуществляться по коду заболевания, а не по тексту! Тем более, если текст вводится с клавиатуры, а не выбирается из справочника. Приведу примеры из области, которую Вы предложили:

A54.0 - Гонококковая инфекция нижних отделов мочеполового тракта без абсцедирования периуретральных или придаточных желез
A54.1 - Гонококковая инфекция нижних отделов мочеполового тракта с абсцедированием периуретральных и придаточных желез
A54.2 - Гонококковый пельвиоперитонит и другая гонококковая инфекция мочеполовых органов
Гонококковый(ое):
• эпидидимит † (N51.1*)
• воспалительное заболевание тазовых органов у женщин † (N74.3*)
• орхит † (N51.1*)
• простатит † (N51.0*)
Исключен: гонококковый перитонит (A54.8)

. . .


Хотел исправить текст, а нажал не ту кнопку.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961194
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-l,

Да я понял. Но у ТС код по МКБ это типа как "тип заболевания", или "заболевание", которое он, по моему совету, вынес в отдельную таблицу-справочник. А "диагноз" это как раз факт выявления этого заболевания у некоторого пациента. Честно говоря, никогда не видел, чтобы в истории болезни писали код МКБ. "Триппер", "сифак", "тубик", или "желтуха" конечно, тоже не напишут - это я условно сказал.

автори никаких таблиц диагнозов!

Так о том и речь - одна из таблиц лишняя. А называть ту что не лишняя "случай" или "диагноз" это просто вопрос глоссария проекта. Можно хоть "недомоганием" назвать, главное, чтобы значение этого названия было где-либо четко прописано и определено в том смысле "что конкретно мы этим термином называем". По DDD это называется "ubiquitous language".
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961195
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-lВрач не может от себя написать диагноз, формулировка диагноза должна соответствовать
статье (статьям) МКБ.

Значит таблица поставленных диагнозов должна иметь внешний ключ на справочник заболеваний.
Как это противоречит чему-то вышесказанному?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961196
Фотография vmag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лучше поговорите на тему курица и яйцо, больше толку будет...
ТС брякнул три слова крекс, бекс, фекс и понеслась....
Кто гостами начал кидаться, кто про любимую болезнь...
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961202
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Честно говоря, никогда не видел, чтобы в истории болезни писали код МКБ.

У меня есть приятельница. У неё медицинское образование, но при этом лечить она не хочет. Как я понимаю, побаивается и духа не хватает. Так вот, она работает в США, в больнице, и занимается ровно тем, что кодирует истории болезней по МКБ. То есть транслирует записи врачей в коды.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961216
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer
fkthat
Честно говоря, никогда не видел, чтобы в истории болезни писали код МКБ.

У меня есть приятельница. У неё медицинское образование, но при этом лечить она не хочет. Как я понимаю, побаивается и духа не хватает. Так вот, она работает в США, в больнице, и занимается ровно тем, что кодирует истории болезней по МКБ. То есть транслирует записи врачей в коды.

Приятельницы есть тоже, но в РФ.
С одной главврачихой даже прожил 6 лет.

Так вот, когда пришел в свою больничку после операции в онкоцентре (но вроде без онко), тетеньки долго не могли найти тот самый МКБ. Вроде опухоль, но не злокачественная. Долго решали, что писать. В кабинете у замши главного в толстенном справочнике что-то выбрали
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961235
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov

Значит таблица поставленных диагнозов должна иметь внешний ключ на справочник заболеваний.
Как это противоречит чему-то вышесказанному?

ТС как раз так, в итоге и сделал, только неудачно таблицу назвал "all_diagnosis", когда нужно было бы, например, "deseases". Поле code как раз и можно использовать под код МКБ.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961243
Фотография Ennor Tiegael
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Dimitry Sibiryakov

Значит таблица поставленных диагнозов должна иметь внешний ключ на справочник заболеваний.
Как это противоречит чему-то вышесказанному?

ТС как раз так, в итоге и сделал, только неудачно таблицу назвал "all_diagnosis", когда нужно было бы, например, "deseases". Поле code как раз и можно использовать под код МКБ.
С названиями у пациента ТС вообще полный швах. Почему-то таблица пациентов названа по-румынски, обращений (в англоязычном мире чаще всего это либо Encounter, либо Episode в зависимости от ИС и деталей семантики) по-норвежски, а все остальное по-английски. Пониманию это не способствует.

all_diagnosis должно быть ICD, ну или ICDCodes на крайняк, хотя бы не надо будет каждый раз объяснять (да, Diseases тоже пишется немного не так).

ЗЫ Настоятельно не рекомендую ТС использовать слово Case для имени таблицы. Не знаю, как в остальных БД, но в MSSQL это ключевое слово, и без квадратных скобок его не написать. Я как-то внедрял систему, где так называлась одна из центральных таблиц, удовольствие писать такой код сильно ниже среднего.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961248
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ennor Tiegael
С названиями у пациента ТС вообще полный швах.

Для учебной БД сойдет :) Мне когда в универе читали РБД, то там еще и не такое писали. У меня к тому времени уже был девелоперский серт от МС по сиквелу, но вредная старуха, что преподавала (впрочем, препоавала она по книге Криса Дейта, т.ч. преподавала норм.) обозлилась, что я весь семестр на её предмет забивал и так и не захотела мне тогда просто так за сертификат зачет поставить - пришлось сдавать вместе со школотой на общих :))
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961406
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ТС брякнул три слова крекс, бекс, фекс и понеслась....

Прозвучал действительно важный вопрос: «А что такое "фекс"? Чему в реальной жизни они соответствуют?» Многие стали давать свое понимание термина "фекс".
Даже была рассказана сказка: "В онкоцентре сделали операцию, толи опухоль удалили, толи не опухоль, толи в мозгу, толи в пятке. В кабинете у замши главного в толстенном справочнике что-то выбрали".
Попытка объяснить, что означает в реальной жизни термин "фекс" была отвергнута.
Dimitry Sibiryakov даже предложил формулировки правильных вопросов в парадигме "крекс, бекс, фекс".

Теперь, с учетом предыдущей темы ТС на этом форуме "ER диаграмма поликлиники", парадигма "крекс, бекс, фекс" станет каноном в проектировании баз данных для лечебного учреждения и передаваться из поколения в поколение как единственно правильное учение!

Вспомнилась фраза из курса истории партии (за точность цитирования прошу извинить, много времени прошло с тех пор): « Узок круг профессиональных разработчиков баз данных, страшно далеки они от предметной области ».
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39961785
Stanislav P
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извините, но всё это уже изобретено в тикет/helpdesk/servicedesk системах даже менять ничего не надо. Там и клиенты/пациенты, и обращения/тикеты с типами, статусами, датами, решениями. И история изменения обращения (Доктор Хаус которые лечит последовательно от разных болезней одного пациента).
И на просторах Интернета можно найти кучу схем БД для таких систем - бери и пользуйся.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39963090
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Но их (профессиональных разработчиков баз) дело не пропало. Они разбудили Stanislav P. Stanislav P развернул революционную агитацию.

Ее подхватили, расширили, укрепили, закалили революционеры-разночинцы, начиная с операторов ввода с клавиатуры и кончая системными администраторами. Шире стал круг борцов, но их связь с предметной областью не стала ближе . "Молодые штурманы будущей бури" подумал я.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39963206
Stanislav P
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Wlr-l,

:)

Предметная область данной темы - простейшая схема из трёх таблиц и к медицине имеет отношение только названием таблиц.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39963633
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Stanislav P
Wlr-l,

:)

Предметная область данной темы - простейшая схема из трёх таблиц и к медицине имеет отношение только названием таблиц.


Вообще-то, эти мысли, которые мне вспомнились, впервые прозвучали в газете Социал-Демократ № 26, 8 мая (25 апреля) 1912 г . А звучат очень современно, вне зависимости от области практической деятельности и временных рамок.

Вы не поняли суть: есть лес (предметная область), в нем есть деревья (сущности), которые состоят из ветвей (атрибуты сущности). Вопрос, когда ветвь следует рассматривать как дерево? Т.е. когда атрибут некоторой сущности следует рассматривать как отдельную сущность. Иногда наоборот, то, что сначала рассматривали, как отдельную сущность, является всего лишь атрибутом другой сущности. Смотрите у Баркера, он приводит достаточно много примеров. Вы же увидели три таблицы и две линии между ними.

Проектирование базы данных это не тогда, когда вместо действительно нужных несколько десятков мегабайт генерируются сотни, а то и тысячи гигабайт цифрового мусора. И не тогда, когда запрос после трех дней работы из этой кучи мусора выдает на-гора кучку поменьше, из которой та женщина, которая кодирует диагнозы по МКБ, должна зубилом и молотком отсечь все не нужное, чтобы получить стандартный отчет.

По поводу ваших тикет/helpdesk/servicedesk. Не удивили ! Я видел отдел кадров на базе активДиректории, видел и систему, в которой случаи заболеваний учитываются проводками…

А ваша фраза "И на просторах Интернета можно найти кучу схем БД для таких систем - бери и пользуйся" на форуме «Проектирование БД» звучит как "Зачем географию учить, коли извозчики есть". Кстати, эта фраза из 18 века!

Если некто далек от предметной области, то это не означает, что он находится в узком кругу профессиональных разработчиков баз данных .

Учиться, учиться и еще раз учиться!

Всем удачи!
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39963693
Wlr-l
Вопрос, когда ветвь следует рассматривать как дерево? Т.е. когда атрибут некоторой сущности следует рассматривать как отдельную сущность.

когда её высадят в отдельную ямку.
но с ветками аналогия не пройдёт.
В наших программах всё есть сущность и каждая сущность всегда выделяется в отдельный объект
и взаимодействуют они друг с другом гораздо теснее и активнее, чем неподвижная ветка
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39963875
Stanislav P
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Wlr-l
Вы не поняли суть: есть лес (предметная область), в нем есть деревья (сущности), которые состоят из ветвей (атрибуты сущности). Вопрос, когда ветвь следует рассматривать как дерево? Т.е. когда атрибут некоторой сущности следует рассматривать как отдельную сущность.

Пока ни лес, ни деревья, ни ветки с листьями никому не нужны, нет и предметной области. Для человека изучающего лес последний является предметной областью. Для изучающего дерево оно является предметной областью. Тут Вы правы, когда говорите об сущностях. Но забываете главное - схожесть. У мышей и человека есть сердце, лёгкие, но это разные сущности. Для биологов изучающих конкретный вид они являются разными сущностями, но есть общая биология, которой не важен вид существа.
В примере ТСа есть некая сущность, состояния которой нужно диагностировать, записать и назначит некие процедуры для восстановления статуса "нормальное функционирование". Если не зацикливаться на пациент - это человек, то к пациенту подходит и автомобиль, который тоже может "болеть" сразу несколькими "заболеваниями", и компьютер, и корова, то есть любая сущность. И какая тогда предметная область у всех этих сущностей? Медицина? Ветеринария? Автомеханика?
Умейте выделять главное!

PS. На счёт "погуглить схемы БД". Вполне себе хороший совет, так как ответы на этом форуме надо ждать (час, два, день, неделю), и они не всегда полны и понятны. А гуглить можно круглосуточно (условно) и находить много примеров, в которых можно попытаться разобраться, а не сидеть и ждать пока ответят на форуме.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39965290
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза
Wlr-l
Вопрос, когда ветвь следует рассматривать как дерево? Т.е. когда атрибут некоторой сущности следует рассматривать как отдельную сущность.

когда её высадят в отдельную ямку.
но с ветками аналогия не пройдёт.
В наших программах всё есть сущность и каждая сущность всегда выделяется в отдельный объект
и взаимодействуют они друг с другом гораздо теснее и активнее, чем неподвижная ветка


" когда её высадят в отдельную ямку " - она просто засохнет.

" но с ветками аналогия не пройдёт.
В наших программах всё есть сущность и каждая сущность всегда выделяется в отдельный объект
".

Ночь. Тишина. Она и Он. Луна. Вокруг лес, а в нем деревья из одних стволов совсем без ветвей.
Редкая птица долетит до середины этого леса! Поэтому и не слышно здесь трелей соловья!
Только в нашем лесу вы получите незабываемые впечатления от романтического вечера. Можете взять
этот сюжет для рекламы своих программ.

" взаимодействуют они друг с другом гораздо теснее и активнее, чем неподвижная ветка "

Особенно при ветре и чем сильнее ветер, тем взаимодействуют они все теснее и активней.
Когда ветер достигает ураганной силы, они сплетаются друг с другом в экстазе и
кричат: "Буря!.. Пусть сильнее грянет буря!.." А когда ветер стихнет останутся неподвижные стволы.


Ключом являются слова: "В наших программах".

Что может быть хуже профессиональных разработчиков баз данных, далеких от предметной области?
Только проффесиональные программисты пишущие базы данных
.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39965358
балаболы-теоретеки, засоряющие эфир, гораздо хуже.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39966056
Wlr-l
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Алексей Роза
балаболы-теоретеки, засоряющие эфир, гораздо хуже.


Перефразируя мысль из той же газеты Социал-Демократ № 26, 8 мая (25 апреля) 1912 г.,
говорю "не ради обывательского славословия, а для уяснения своих задач, для уяснения настоящего
исторического места проектировщика БД, сыгравшего великую роль в создании базы данных лечебного учреждения".

Вернемся к истокам: " Есть пациенты, диагнозы и случаи. У меня возникли сомнения по поводу связей.
У случая может быть много диагнозов, но один пациент, т.е. связь от случая к пациентам один к одному?
Прошу совета по связям в схеме
".

Согласен, я теоретик-балабол потому, что

1.На пальцах объяснил, что такое больной (не нравится мне иностранное слово "пациент"),
случай , диагноз , посещение . Без привязки к базам данных, программам и придумывания своих трактовок.
Обращение (к слову сказать) - это тогда, когда у "человека что-то позеленело" и он пришел к врачу сам.
Есть еще профосмотры, направления из других лечебных и не лечебных учреждений...
2.На основании этого сделал утверждение, что здесь две сущности Больной и Случай.
Диагноз - это один из атрибутов сущности Случай.
3.Этих сущностей вполне достаточно, для ответов на реальные вопросы типа "Сколько ...?".


Теперь немного о практиках - не балаболах.

Если некто сделал самоделку, то это не означает, что он стал Кулибиным.
Если некто утверждает, что выпущенный из руки карандаш летит к облакам а не к земле, то это не означает, что он Эйншнейн.
Если некто создал теорию, в которой всё сущности и у них нет атрибутов, то это не означает, что родился новый Чён или Баркер.

" балаболы-теоретеки, засоряющие эфир, гораздо хуже " - это признание факта, что фраза
"Только проффесиональные программисты пишущие базы данных" является истинной.


Чтобы два раза не вставать, специально для Stanislav P из города Сочи, если некто утверждает, что между
лечебным учреждением, коровой и автомастерской нет разницы, то это не означает, что он Интегратор.
Если некто не сидит и не ждет ответов на форуме, а круглосуточно гуглит и находит много примеров,
то это не означает, что из него получится Великий Комбинатор.

Собственно у меня все по этой теме.
...
Рейтинг: 0 / 0
Простейшая схема БД из 3 сущностей
    #39976177
ИВП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Wlr-l
Алексей Роза
балаболы-теоретеки, засоряющие эфир, гораздо хуже.


Перефразируя мысль из той же газеты Социал-Демократ № 26, 8 мая (25 апреля) 1912 г.,
говорю "не ради обывательского славословия, а для уяснения своих задач, для уяснения настоящего
исторического места проектировщика БД, сыгравшего великую роль в создании базы данных лечебного учреждения".

Вернемся к истокам: " Есть пациенты, диагнозы и случаи. У меня возникли сомнения по поводу связей.
У случая может быть много диагнозов, но один пациент, т.е. связь от случая к пациентам один к одному?
Прошу совета по связям в схеме
".

Согласен, я теоретик-балабол потому, что

1.На пальцах объяснил, что такое больной (не нравится мне иностранное слово "пациент"),
случай , диагноз , посещение . Без привязки к базам данных, программам и придумывания своих трактовок.
Обращение (к слову сказать) - это тогда, когда у "человека что-то позеленело" и он пришел к врачу сам.
Есть еще профосмотры, направления из других лечебных и не лечебных учреждений...
2.На основании этого сделал утверждение, что здесь две сущности Больной и Случай.
Диагноз - это один из атрибутов сущности Случай.
3.Этих сущностей вполне достаточно, для ответов на реальные вопросы типа "Сколько ...?".


Теперь немного о практиках - не балаболах.

Если некто сделал самоделку, то это не означает, что он стал Кулибиным.
Если некто утверждает, что выпущенный из руки карандаш летит к облакам а не к земле, то это не означает, что он Эйншнейн.
Если некто создал теорию, в которой всё сущности и у них нет атрибутов, то это не означает, что родился новый Чён или Баркер.

" балаболы-теоретеки, засоряющие эфир, гораздо хуже " - это признание факта, что фраза
"Только проффесиональные программисты пишущие базы данных" является истинной.


Чтобы два раза не вставать, специально для Stanislav P из города Сочи, если некто утверждает, что между
лечебным учреждением, коровой и автомастерской нет разницы, то это не означает, что он Интегратор.
Если некто не сидит и не ждет ответов на форуме, а круглосуточно гуглит и находит много примеров,
то это не означает, что из него получится Великий Комбинатор.

Собственно у меня все по этой теме.

А не Бредятина ли скрывается под этим ником?
...
Рейтинг: 0 / 0
51 сообщений из 51, показаны все 3 страниц
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Простейшая схема БД из 3 сущностей
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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