我有一个属性列表,我试图找出1NF,2NF,3NF,BCNF,4NF 属性列表是:
- Pat_Name
- Pat_Address
- Pat_Num
- Pat_Dob
- Pat_Gender
- Pat_MotherName
- Pat_FatherName
- Doc_Name
- Doc_Address
- Doc_HomeTel
- Doc_MobTel
- Doc_Qualification
- Doc_Dob
- App_Date
- App_Time
- App_Doc
- Visit_Date
- Visit_Time
- Visit_Reason
- Diagnosis
- Prescription
- DateOfBill
- TotalBillCharge
我得到的第一范式:
Patient (Table) -> Pat_ID,Pat_Name,Pat_Address,Pat_Num,Pat_Dob,Pat_Gender,Pat_MotherName,Pat_FatherName
Doctor (Table) -> Doc_ID,Doc_Name,Doc_Address,Doc_HomeTel, Doc_MobTel,Doc_Qualification, Doc_Dob
Appointment(Table) -> App_ID,Pat_ID,Doc_ID,App_Date,APP_Time,Visit_Reason,Diagnosis,Prescription,DateOfBill,TotalBillCharge
在1NF:
我对Visit_Time和Visit_Date感到困惑(与Appointment_Time& Appointment_Date相似)。看起来类似我所以我删除了两个。这是我做的正确还是我应该为访问制作新表(真的需要对此有所帮助)? 我已经为识别主键创建了新属性。
2NF:
表患者没有任何部分依赖性(我是否正确?) 表医生没有任何部分依赖(我是否正确?) 表I得到了部分依赖性,因此,我将另一个名为visit
的表分开 Appointment -> App_ID,Pat_ID,Doc_ID,App_Date,APP_Time
Visit -> App_ID,Visit_Reason,Diagnosis,Prescription,DateOfBill,TotalBillCharge
在3NF: 表患者和医生我没有发现任何传递依赖 在表格访问中具有传递依赖性,因此我将其与新表格账单分开
Visit -> **App_ID**,Visit_Reason,Diagnosis,Prescription_ID //(I created new Attributes here, is this correct ?)
Bills -> Prescription_ID, DateOfBill, TotalBillCharge
感谢任何帮助。 :)