【发布时间】:2015-01-31 11:23:59
【问题描述】:
考虑一下我的专栏VARCHAR(MAX)。如果我将其更改为VARCHAR(500),Microsoft SQL Server 会减小 table 声明的大小吗?
如果您有任何链接,请发表评论。我去看看。
更新:
我用表格测试了以下两种情况。
- 改变列大小
- 创建新表并从旧表中导入数据。
初始表格大小
ALTER TABLE table_transaction ALTER COLUMN column_name VARCHAR(500)
在 ALTER 列之后,表大小增加
使用新的列大小创建新表并从旧表中导入数据
我已经处理了新表中的索引。
为什么在ALTER COLUMN 的情况下会增加表大小。理想情况下,表大小应该减小。
在对原始表中的PK 执行碎片整理后,减少了几 MB。但是它不像创建新表那样有前途。
【问题讨论】:
-
嗯...但它并没有回答我关于优缺点的问题。我要的是空间。
-
是等价的,因为只占用内容的空间
标签: sql sql-server