首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL数据库设计(地址的最佳实践)

SQL数据库设计(地址的最佳实践)
EN

Stack Overflow用户
提问于 2022-11-06 23:18:07
回答 2查看 28关注 0票数 0

我想知道哪种方法能更好地设计我的数据库。

目前设计的医院,广告职位,需要特定的技能(例如,护理,行政等)。候选人可被邀请参加职位面试。

对于其中一项要求,我必须包括医院详细信息,如:医院标识符、医院名称、地址和电话号码。我还必须在其他表格中包括有关候选人、职位和面试的详细情况。

我的问题是,把医院的地址列在医院表格的栏内是否更好,还是为医院的地址另立一张名为地址的表格,并与医院的桌子建立一对一的关系?

我试着把地址放在医院的专栏里,但我想知道哪个更好,把地址放在单独的桌子上是否更有意义。

EN

回答 2

Stack Overflow用户

发布于 2022-11-06 23:45:31

你真的需要问问自己是否需要一家医院和它的地址之间的关系?一个地址会有不止一家医院吗?这种关系有什么用?

一般来说,拥有一种关系简化了更新的过程。如果我有100件东西都在同一个地址上,并且我需要更新地址,那么将该地址作为一个相关表中的一行进行隔离就更容易了。

但是,如果只有一件事在一个地址.好吧..。这就为你解答了这个问题。

最佳实践有时也适用,但我发现,如果你只问“为什么”,并仔细考虑一下,你就会为自己找到正确的方法。

票数 0
EN

Stack Overflow用户

发布于 2022-11-06 23:48:17

数据库规范化是一件变幻莫测的事情。在学校,选择是有限的,因为周围有家教宣布它应该在一个不同的桌子,因为它是一个地址,因此可以使用多次。

然而,世界并不是这样运作的。

在这种情况下,你的医院有多个地址,他们经常改变位置吗?最有可能的答案是否定;因此:在现实世界中,选择最有可能的选项并将地址添加到表中即可。

注意额外的表,因为JOIN操作确实(在现实世界中)是有惩罚的。这并不是说你应该忘记所有关于规范化的事情,而是你应该考虑到数据模型的真实世界含义。

如果每个地址与其绑定的外键一样独特,则将每个地址添加到单独的地址表中没有任何实际用途。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74340497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档