我正在使用 Sql Server 2012 开发数据库。在我们的数据模型中,我们有一个 类型User
,具有基本的登录信息、姓名、地址等。其中一些用户将是Technician
s,他们具有与a User
,但还有一些其他属性,例如Route
,Ship To Location
等。
我的问题是,在设计数据库时,如何模拟这种情况。我想到了2个选项。
- 在表中有一个外键
Technician
到数据库的 PKUser
以将它们链接起来。我对此的担心是我如何知道用户是否是技术人员,每次用户登录时我都必须在技术人员表上运行查询。 - 将表中的一个字段
User
与 Technician 数据库的 PK 链接起来,如果此字段为空,或者 -1 或我知道该用户不是技术人员的任何内容。我没有看到任何直接的问题,但我不是数据库设计方面的专家。
这些中的任何一个都有优势吗?如果有,为什么?目前我有 2 个不同的表,有两个完全不同的 id,它们没有以任何方式链接,因此我现在面临问题。