sql – 用继承设计数据库是个好主意吗?

例如,我有两个表:’客户’和’员工’.它们几乎相同,只有2​​个属性不同.那么我应该创建另一个名为’person’的表包含’customer’和’staff’的所有相同属性,然后创建fk键指向这个’person’?像课堂设计中的继承之类的东西.

这种方法有什么缺点吗?

解决方法

你正在描述一个模式调用 Class Table Inheritance.这是一个有效的设计,但像任何其他设计一样,它必须用得很好.阅读Martin Fowler的“企业应用程序架构模式”,了解有关其优缺点的更多详细信息.

有些人提醒不要使用连接,但只有在需要特定于子类的列时才需要连接.当给定查询只需要公共列时,您可以避免额外连接.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...