小编典典

在现有的SQL Server 2005数据库中,将数据类型varchar更改为nvarchar。有什么问题吗?

sql

我需要将数据库表中的列数据类型从更改varcharnvarchar,以支持中文字符(当前,varchar具有这些字符的字段仅显示问号)。

我知道如何更改值,但是我想看看这样做是否安全。在进行更改之前,有什么需要注意的吗?谢谢!


阅读 167

收藏
2021-03-23

共1个答案

小编典典

请注意,此更改是数据大小的更新,请参见深入了解SQL Server表列。所做的更改将添加一个新的NVARCHAR列,它将更新将dta从旧的VARCHAR复制到新的NVARCHAR列的每一行,然后将旧的VARCHAR列标记为已删除。如果表很大,则会生成一个大的日志,因此请为此做好准备。更新后,请运行DBCCCLEANTABLE以回收以前的VARCHAR列使用的空间。如果可以承受,则可以更好地运行ALTER TABLE ... REBUILD,它不仅可以回收空间,还可以完全删除物理上已删除的VARCHAR列。开头的链接文章有更多详细信息。

您可能还想对表启用Unicode压缩

2021-03-23