SQL-Server表有60列,这是保留数据的任何更好方法,这是正常的吗?



我在我工作的公司的变压器数据库中工作。

我在设计中工作,我得到了带有60列的Una表,我真的很新,但是我从来没有在同一张桌子中得到那么多列,这是正常的吗?同一张桌子?

我正在使用SQL Server 2008

非常感谢我的英语:p

表可以使表(60(的列具有(60(。但是,这也不是通常的。

将数据分为没有歧义的多个表总是一个好主意。我们称此过程:归一化。这样,我们可以防止任何潜在的异常。检查下面的示例:

emp_id  emp_name  emp_address   emp_dept
101     John      London        D001
101     John      London        D002
123     Alex      Toronto       D300
166     Jack      Dubai         D900
166     Jack      Dubai         D004

在这里,有2个"杰克"。如果我们需要在employee:101上执行更新,它将创建update anomaly

如果列不允许null值,我们不能将任何新数据插入任何新数据,而 CC_4值则导致insert anomaly.

如果部门D300关闭,则将部门从DB中删除,则将在此处删除Alex的员工Alex,这将导致数据丢失并导致delete anomaly

归一化表的一种潜在方法是通过分开EMP_ID和EMP_ -dept属性来重组表,例如:

emp_id  emp_name  emp_address
101     John      London        
123     Alex      Toronto      
166     Jack      Dubai
emp_id  emp_dept
101       D001
101       D002
123       D300
166       D900
166       D004

这也通过消除重复的数据来帮助内存。请查看网站以获取更多示例:https://beginnersbook.com/2015/05/normalization-inmalization-inmalization-ind-dbms/

最新更新