2011-04-21 5 views
0

의료 응용 프로그램을 개발 중이므로 환자는 임상 적 히스테리 및 안과 측정을 등록해야합니다 (다른 것들 중에서도).데이터베이스 디자인 질문

임상 기록은 환자의 병력과 가족 기록으로 구성됩니다. 둘 다 일반적인 병리학 (당뇨병)과 특수 병리 (예 녹내장)를 동반 할 수 있습니다. 나는 두 가지 방법으로 병리를 분류하라는 요구를 받았다. 즉, 병리학 적 병리학 적 병리학 적 병리학 적 병리학 적 병리학 적 병리학 적 병리학 적 병리학 적 병리학 요법 그것이 일반적인 병리학이라면 그것은 patology에 대한 설명을 정의 할 필요가 있습니다. 마지막으로 나는 안과 측정이 우안인지 좌안인지를 구분해야합니다.

은 지금 나는 다음과 같은 결정을했습니다,하지만 난 그들에 대해 잘 모르겠어요 그리고 난 다른 사람의 의견이 싶습니다

임상 역사는 환자와 포함에 FK와 테이블을 날짜 열 "최종 업데이트 날짜" 병리학은 특수한 또는 일반적인 병리학인지 여부를 지정하는 숫자 pk 열, 이름 열, 설명 및 플래그 예/아니요가있는 단일 테이블로 그룹화됩니다. 임상 내역 및 Patology가 바인딩됩니다. 임상 병력에 대한 fk와 patologies 테이블에 대한 fk로 구성된 기본 키가있는 테이블과 환자 병리학인지 가족 병리학인지를 정의하는 플래그 yes/no가 있습니다.

눈 감기 측정은 검사 표와 관련이 있으며 검사 당 0-2 기록을 포함 할 수 있습니다 (왼쪽 또는 오른쪽 눈 검사 없음). 눈은 다시 플래그로 식별됩니다. 그것의 pk는 검사 테이블과 깃발에 fk에 의해 구성됩니다. 마지막으로, 측정에는 항상 사용 된 기기 (축, 원통, ...)에 따라 동일한 값 유형 (float)과 측정 값의 공통 세트 (유형)가 저장되므로 다음을 추가했습니다. m -2) 테이블 whith a pk 구성 Opthalmological 측정 pk 및 악기 유형

나는 내 데이터를 추측하고 그룹화해야하는 플래그와 함께 불편 함을 느낀다. 반면에 나는 반영하기 위해 중복 테이블보다 나은 것을 발견하지 못했다. (칼럼의 이름 만 다른 두 병리학 표 : "해부학 적 부분"또는 표기)

나는이 디자인의 결함에 대한 의견, 의견 및 제안을 원한다. 및 그 개선 사항

사전에 감사

답변

0

이것은 매우 일반적인 문제입니다 - 그것은 그렇다고 좀은 "? 어떻게 내 데이터베이스에 상속의 객체 지향 개념을 모델링 할"에 관련이 크레이그 라만 (Craig Larman)의 "UML과 패턴 적용하기"책은 정말 잘 다루어진다.

옵션이 있습니다. 이름이 비즈니스 도메인을 반영하는 특정 테이블에서 비즈니스 도메인을 모델링 할 때 본질적으로 잘못된 것은 없습니다. 특히 수명이 긴 응용 프로그램의 경우 가능한 한 명확하게 버그와 불편 함을 줄일 것입니다.

질문을 올바르게 이해했다면 "전문 병리"는 "일반적인 병리"와는 다른 특성을 갖습니다. 분명히 두 개의 별개 표로 모델링 할 것입니다. - 경향 사실, 불쾌한, 오류 플래그로

Table: examinations 
ExaminationID 
LeftEyeExaminationID - FK to EyeExaminations table 
RightEyeExaminationID - FK to EyeExaminations table 

Table: eye_examinations 
EyeExaminationID 
Value 

: 당신의 "시험"테이블의 경우

, 내가 좋아하는 뭔가를 생각 하는데요. 대부분의 데이터베이스는 "유형"을 정의 할 수 있습니다.이 유형은 적어도 C와 유사한 언어로 상수처럼 플래그를 더 명료하게 추상화합니다.

2

어떤 의료 시스템 표준, 분류 체계 및 메타 데이터 모델을 사용하고 계십니까? 이런 종류의 국가 및 국제 표준 범위가 있음을 알고 있다고 가정합니다. SNOMED, ​​ICD, HL7, HIPAA. 표준에 정의 된 분류 체계, 코드 및 메타 데이터를 준수함으로써 시작하는 경우 데이터 모델을 시작하기위한 좋은 기초가되어야합니다.

관련 문제