我需要将int
字段1005
转换为ntext
类似Alarm1005
,但CAST(ID as ntext)
不起作用,所以如何转换(强制转换) )int
到ntext
?
答案 0 :(得分:6)
CAST(CAST(ID as nvarchar(10)) as ntext)
?
修改强>
正如 gbn 刚刚暗示的那样,nvarchar(max)
实际上是一种更适合存储大型字符串数据的类型。
有两个原因:
nvarchar
的{{1}}相比,您有functions个与ntext
一起使用。ntext
和text
类型已弃用officially。另一个很小的原因是,你不需要双重演员。它就像image
或CAST(ID AS nvarchar(10))
一样简单。
答案 1 :(得分:1)
ALTER TABLE MyTable ADD new_column NTEXT
UPDATE MyTable SET new_column = cast(old_column as nvarchar(16))
ALTER TABLE MyTable DROP COLUMN old_column