如何附加到t-sql中的文本字段SQL Server 2005
问题描述:
在Sql Server 2005中使用t-sql附加到文本字段的最佳方式是什么?如何附加到t-sql中的文本字段SQL Server 2005
用varchar我会这样做。
update tablename set fieldname = fieldname + 'appended string'
但是这不适用于文本字段。
答
试试这个:
update
tablename
set
fieldname = convert(nvarchar(max),fieldname) + 'appended string'
答
从链接复制:
DECLARE @ptrval binary(16)
SELECT @ptrval = TEXTPTR(ntextThing)
FROM item
WHERE id =1
UPDATETEXT table.ntextthing @ptrval NULL 0 '!'
GO
+0
我希望有一个更简单的方法,但感谢您的链接。 – 2009-01-21 18:05:50
答
在2005年,你应该使用VARCHAR(最大值)或nvarchar(最大),这些列将具有正常功能的varchar工作。文本和ntext已弃用
答
为VARCHAR(最大值)的最大长度为2,147,483,647个字符。 这与Text数据类型相同。
无论文字能够容纳什么,这可以容纳, ,所以你不必担心通过切换到VARCHAR(MAX)来耗尽房间。
谢谢。
关闭我的头顶我会说这应该工作。这个问题可能是一个转换/铸造问题。尝试fieldname = fieldname + N'appended string' – Craig 2009-01-21 17:57:07
不幸的是,这并没有奏效。我得到'数据类型文本和nvarchar在添加操作符中不兼容。'不过谢谢。 – 2009-01-21 18:03:13