我在数据库中有147列,其中大部分是VARCHAR。此数据是从政府机构导入的,对于空字段,它们包括字段允许的所有空格,而不是仅输入空字符串或NULL。有些字段只有空格的50个字符。
我最近运行了一个脚本,只用空格转换所有这些列,而不是使用NULL,但表存储大小保持不变。
我原以为空间会占用大量磁盘空间(我们有6000万条记录)。但没有区别。
任何人都可以向我解释原因吗?
答案 0 :(得分:1)
答案是重建表格的聚集索引。
ALTER INDEX IndexName ON YourTable REBUILD
adkSerenity在他上面评论中提供的链接中回答了这个问题。
How to reduce size of SQL Server table that grew from a datatype change