Sql 我应该把这些表连在一起吗?
我不知道这两张桌子该怎么办。一个是“公司”级别的notes表 但是,其中一个字段是指定与您交谈的员工。我不确定这个Notes表是否应该引用回员工,或者它是否应该只是一个包含员工姓名的文本字段Sql 我应该把这些表连在一起吗?,sql,sql-server,Sql,Sql Server,我不知道这两张桌子该怎么办。一个是“公司”级别的notes表 但是,其中一个字段是指定与您交谈的员工。我不确定这个Notes表是否应该引用回员工,或者它是否应该只是一个包含员工姓名的文本字段 NotesTable id - pk notes - nvarchar(max) EmployeeId or (EmployeeName) - nvarchar(200) EmployeeTable id - pk firstname lastname etc 我不确定的原因是,我是否会硬删除(即他
NotesTable
id - pk
notes - nvarchar(max)
EmployeeId
or
(EmployeeName) - nvarchar(200)
EmployeeTable
id - pk
firstname
lastname
etc
我不确定的原因是,我是否会硬删除(即他们可以从公司中删除员工)。这种关系将失去
唯一的解决办法是进行软删除
软删除是更好的方式吗 是的,储藏很便宜。执行软删除,并将某种标志设置为不活动/终止。notes表应具有指向
EmployeeTable
的链接。这就是关系数据库所做的。它们支持将实体链接在一起。是的,这就是为什么我感到痛苦的原因,因为我知道这可能是我应该做的,但当一些记录可能被删除,而你也不想让这些注释消失时,它会变得奇怪。“软删除是更好的方式吗?”-业务部门怎么说?还记得欧洲关于个人信息的隐私法吗?这是你不想知道的东西,可能很昂贵。@TomTom-我还没有就这一部分向他们提出理由,但我需要知道它的利弊,在过去,他们对软删除很好。根据欧盟法律,这对我们来说并不重要,因为99%的业务来自北美(大约95%来自美国)