23

在 Sql Server 2005 中使用 t-sql 追加到文本字段的最佳方法是什么?

使用 varchar 我会这样做。

update tablename set fieldname = fieldname + 'appended string'

但这不适用于文本字段。

4

4 回答 4

39

试试这个:

update 
  tablename
set
  fieldname = convert(nvarchar(max),fieldname) + 'appended string'
于 2009-01-21T18:01:52.897 回答
6

这应该有效(链接)

从链接复制:

DECLARE @ptrval binary(16)
SELECT @ptrval = TEXTPTR(ntextThing)
FROM item
WHERE id =1
UPDATETEXT table.ntextthing @ptrval NULL 0 '!'
GO
于 2009-01-21T17:59:48.690 回答
3

在 2005 年,您应该使用 varchar(max) 或 nvarchar(max) 这些列将与普通的 varchar 函数一起使用。text 和 ntext 已被弃用

于 2009-01-21T18:01:10.030 回答
0

varchar(max) 的最大长度为 2,147,483,647 个字符。这与文本数据类型相同。

无论文本可以容纳什么,它都可以容纳,因此您无需担心通过切换到 VARCHAR(MAX) 会耗尽空间。

于 2011-07-15T18:37:38.480 回答