Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 表中具有大数据和其他较小数据列的列_Sql Server_Database Design - Fatal编程技术网

Sql server 表中具有大数据和其他较小数据列的列

Sql server 表中具有大数据和其他较小数据列的列,sql-server,database-design,Sql Server,Database Design,该表有5列,3列为int数据类型,其他2列预计存储大约5MB到10MB的字符串数据 Table ------ ID int ItemValue int Grade int PrimaryDesc nvarchar(max) -- will hold big data SecondaryDesc nvarchar(max) -- will hold big data 现在我的问题是,离开桌子,让它成长,可以吗?当我获取数据时,我将通过ADO.Net仅获取必填字段(数据)(即,当用户需要

该表有5列,3列为int数据类型,其他2列预计存储大约5MB到10MB的字符串数据

Table
------ 
ID int 
ItemValue int 
Grade int 
PrimaryDesc nvarchar(max) -- will hold big data 
SecondaryDesc nvarchar(max) -- will hold big data
现在我的问题是,离开桌子,让它成长,可以吗?当我获取数据时,我将通过ADO.Net仅获取必填字段(数据)(即,当用户需要短数据时,仅获取ID、ItemValue和Grade列值,并且仅当用户请求详细视图时才会查询大数据列)

如果所有列都在一个表中,是否会出现性能问题?您认为将PrimaryDesc和SecondaryDesc移动到一个单独的表中并将其主键存储在原始表中会有任何帮助吗


提前感谢。

我不认为将最后两列移动到另一个表会提高性能。只要您对更频繁访问的列(如ID、ItemValue等)有适当的索引,就不会有任何性能问题

所以我建议保持表结构不变并进行查询,但要确保有适当的索引

可能是ID将是主键(集群索引) ItemValue-非群集 等级-非聚集

这仅适用于一种情况。可能您还可以根据查询表的方式创建复合索引