MSSQL节省空间的“不创建”方案(mssql 存在不创建)

《MSSQL节省空间的“不创建”方案》

随着数据库技术的发展,MSSQL已成为一款当下极受欢迎的数据库。但是,当数据量达到一定量级时,MSSQL的空间将会变得非常受限。因此,不同的MSSQL用户对于如何节省存储空间就显得尤为重要,传统上最常用的方法就是删除一些不必要的表,重新设置一些更为节约空间的字段类型。

但是,今天大家要介绍的方案不是删除,而是利用MSSQL的特性,避免创建多余的表,有效节约空间,这就是“不创建”方案。这一方案主要充分利用MSSQL中普遍存在的,支持表数据联结功能。

例如,假设有两张关联表:

表A[Name(nvarchar),Email(varchar)]

表B[Name(nvarchar),Phone(int)]

它们之间有一个外键:Name

传统方案中,这两张表必须要分别创建。但是,我们可以通过不创建表B而实现相同的功能,代码如下:

SELECT

a.Name,

a.Email,

b.Phone

FROM

tableA a

LEFT JOIN

tableB b ON a.Name=b.Name

该方案主要的特点是,将数据分发到不同的表以相互关联的方式进行保存,而不是将数据合并到一张表中的保存,由此可以节省空间。

“不创建”方案的优势当然无需赘述,但是MSSQL的使用者需要注意的是,有时使用“不创建”方案反而会变得不够灵活,例如,有时用户会希望添加更多的字段,但是,“不创建”方案也无法实现这一点。因此,MSSQL的使用者在采用该方案时,应当严密入己对各自的需求进行考量,了解是否真的符合要求。

总而言之,MSSQL节省空间的“不创建”方案确实具备优势,但用户在采用的过程中仍需要考虑好目的以及实际情况,以达到最好的结果。


数据运维技术 » MSSQL节省空间的“不创建”方案(mssql 存在不创建)