sql-server - 额外的空间会影响磁盘空间吗?

标签 sql-server storage varchar

我在数据库中有 147 列,其中大部分为 VARCHAR。此数据是从政府机构导入的,对于空字段,它们包括该字段允许的所有空格,而不仅仅是输入空字符串或 NULL。有些字段只有空格的 50 个字符。

我最近运行了一个脚本,将所有这些只有空格的列转换为使用 NULL,但表存储大小保持完全相同。

我原以为空间会占用大量磁盘空间(我们有 6000 万条记录)。但没有任何区别。

谁能向我解释为什么?

最佳答案

答案是重建表的聚集索引。

ALTER INDEX IndexName ON YourTable REBUILD

这是由 adkSerenity 在他在上述评论中提供的链接中回答的。

How to reduce size of SQL Server table that grew from a datatype change

关于sql-server - 额外的空间会影响磁盘空间吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19735779/

相关文章:

memory - 使用内存存储时如何在重新启动之间维护状态 - Mahout

Azure Storage Rest-API 通过 Powershell 列出容器内容

tree - Reddit 和 Hacker News 如何存储他们的新闻和评论?

MySQL唯一键似乎只取varchar的前17个字符

sql - 在这里使用 varbinary 比 varchar 有什么优势?

sql-server - MARS TDS header 包含错误 - ASP.NET Core + EF Core 2.1.4 + Azure SQL Server

sql-server - 什么会导致sql server锁:cancel

mysql - 为什么带有 varchar 变量的 mysql 查询执行速度极慢?

c# - 在 C# 中验证小数以在 SQL Server 中存储

sql - 更新触发器更新目标中的所有行,而不仅仅是更新?