我有一个任务,我必须使用SQL开发人员设计逻辑模型。
我正在将概念模型转换为逻辑模型。我有一个关系,NURSE有“nurse_id”和“认证”。 certification属性具有yes / no值。
我的问题是:我应该将yes / no属性移动到新关系吗?或者可以将它保持在相同的NURSE关系中。什么是最佳做法。
并且是该属性(CHAR)的合适数据类型?
谢谢,
保持NURSE关系,因为很容易查询有多少护士有认证,有多少没有,以及哪些护士有认证。
您可以使用CHAR(1)并键入Y或N.如果数据库支持,则可以使用BIT数据类型。如果数据库支持,您可以使用布尔值。由于所有主要数据库都有CHAR(1),我只保留CHAR(1)
因为认证只有是/否值,我建议将它们保持在一对一映射的同一个表中。如果一名护士可以获得多个认证,那么另一个表可用作多对一或一对多的映射。
至于数据类型,CHAR很好。如果要节省空间,也可以使用BOOLEAN,然后在应用程序中将其解析为yes / no。