微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

sql-server – 使用ALTER TABLE将varchar列调整为更大的大小是不是很糟糕?

我需要从VARCHAR(36)到VARCHAR(40)的列的简单调整大小.

如果您尝试使用sql Server企业管理器,它生成的脚本实际上是使用新结构创建一个新表,将现有表中的所有数据插入其中,删除现有表,重命名新表,并重新创建任何表索引.

如果您阅读了文档(以及许多在线资源,包括SO),您可以使用ALTER语句进行调整大小.

ALTER是否会以任何方式影响数据的存储方式?指标?统计?我想避免性能命中因为这个修改由于表可能变大.

解决方法

只需使用ALTER TABLE. SSMS有时候有点呃傻

您需要删除并重新创建依赖约束(FK,唯一,索引,检查等)

但是,这只是一个元数据更改,对于任何大小的表都会非常快(除非您还将NOT NULL更改为NULL或将varchar更改为nvarchar等)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐