【发布时间】:2021-01-24 19:09:13
【问题描述】:
我最近在大学有一个关于规范化数据库的讲座,但由于我们在线,我不能真正提出很多问题,所以我来了。
谁能告诉我转换是否正确,如果不是,我错在哪里?
任务:
我的解决方案:
UNF
# Patient Nos
Patient Name
Ward Nos
Ward Name
Bed Name
# Drug Number
(Drug Name)
(Description)
(Dosage)
(Method)
(Units Given)
(Start Date)
(Finish Date)
1NF
# Patient Nos
Patient Name
Ward Nos
Ward Name
Bed Name
# Patient Nos
# Drug Number
Drug Name
Description
Dosage
Method
Units Given
Start Date
Finish Date
2NF
# Patient Nos
Patient Name
Ward Nos
Ward Name
Bed Name
# Patient Nos
# Drug Number
Drug Name
Description
# Patient Nos
Dosage
Method
Units Given
Start Date
Finish Date
3NF
# Patient Nos
Patient Name
Ward Nos
Ward Name
Bed Name
# Patient Nos
# Drug Number
Drug Name
Description
# Patient Nos
# Drug Number
Dosage
Method
Units Given
# Patient Nos
Start Date
Finish Date
【问题讨论】:
-
嗯,您缺少外键,并且不清楚您使用的表名是什么。它是一组没有主键和外键的列名。在 SQL DDL 中创建表,即创建表 dbo.TableName... 然后可以更新代码。现在只是一张图片
-
请use text, not images/links, for text--including tables & ERDs。仅将图像用于无法表达为文本或增强文本的内容。在图片中包含图例/键和说明。
-
Re“这是对的”:根据您的参考/教科书显示您的工作步骤,并说明理由 - 并非所有术语/符号都是标准的,我们不确切知道您使用什么算法/方法正在关注,我们想检查你的工作,但不重做,当流程允许时,我们需要你的选择,否则我们无法告诉你哪里是对还是错,我们不想重写你的教科书。请参阅How to Ask,点击谷歌搜索“stackexchange 作业”和投票箭头鼠标悬停文本。如果您不确定它是否正确,请针对您卡在哪里提出 1 个经过研究的特定非重复问题。
标签: sql database database-design database-normalization 3nf