逻辑数据库设计中的是/否属性

问题描述 投票:0回答:2

我有一个任务,我必须使用SQL开发人员设计逻辑模型。

我正在将概念模型转换为逻辑模型。我有一个关系,NURSE有“nurse_id”和“认证”。 certification属性具有yes / no值。

我的问题是:我应该将yes / no属性移动到新关系吗?或者可以将它保持在相同的NURSE关系中。什么是最佳做法。

并且是该属性(CHAR)的合适数据类型?

谢谢,

erd
2个回答
1
投票

保持NURSE关系,因为很容易查询有多少护士有认证,有多少没有,以及哪些护士有认证。

您可以使用CHAR(1)并键入Y或N.如果数据库支持,则可以使用BIT数据类型。如果数据库支持,您可以使用布尔值。由于所有主要数据库都有CHAR(1),我只保留CHAR(1)


0
投票

因为认证只有是/否值,我建议将它们保持在一对一映射的同一个表中。如果一名护士可以获得多个认证,那么另一个表可用作多对一或一对多的映射。

至于数据类型,CHAR很好。如果要节省空间,也可以使用BOOLEAN,然后在应用程序中将其解析为yes / no。

© www.soinside.com 2019 - 2024. All rights reserved.