【发布时间】:2013-01-13 16:03:59
【问题描述】:
我不小心创建了一个类型错误的列NVARCHAR(用于存储密码盐),我想将其转换为NVARBINARY。
我试过了
ALTER TABLE [dbo].[TableName]
ALTER COLUMN [ColumnName] [varbinary] (20) NOT NULL
GO
但它说
不允许从数据类型 nvarchar 到 varbinary 的隐式转换。使用 CONVERT 函数运行此查询。
有没有办法做到这一点? CONVERT 似乎只用于表达,不能用于更改。
【问题讨论】:
-
添加正确类型的新列,将数据从旧列复制/转换到新列,然后删除旧列,可能会更好。
-
该列是否已经包含值?
-
该列已经包含值,是的。我需要创建一个升级脚本,而不是创建脚本。
标签: sql-server sql-server-2008-r2