在数据上我们往往会遇到ntext大文本类型,这种类型如果和 nvarchar类型相加会出现问题,所以有一中方法可以解决这种问题。
使用的sql 函数:
TEXTPTR:返回要更新的 text、ntext 或 image 数据的文本指针的值。
UPDATETEXT :在适当的位置更改 text、ntext 或 image 列的一部分
WRITETEXT: 来更新和替换整个 text、ntext 或 image 字段
举例:
CREATE TABLE [dbo].[aa](
[ID] [int] NULL,
[content] [ntext] NULL
)
insert aa values(1,'aa');
insert aa values(2,'bb');
DECLARE @ptr binary(16)
DECLARE @val nvarchar ( 100 )
SET @val = 'sssss'
SELECT @ptr = TEXTPTR (content) FROM aa WHERE id=2
UPDATETEXT aa.content @ptr null 0 @val-------------id=2的 content的尾部加上@val
UPDATETEXT aa.content @ptr 0 0 @val-------------id=2的 content的头部加上@val
函数 UPDATETEXT 分析参数:第一个参数:表中要更新的ntext类型字段。第二:指向这个字段的指针。第三:插入的位置(值为 0 表示将新数据插入到现有位置的开始处。值为 NULL 则将新数据追加到现有数据值中。)。第四:要删除的字节(值为 0 表示不删除数据。值为 NULL 则删除现有 text 或 image 列中从 insert_offset 位置开始到末尾的所有数据。)。第五:要累加的字符串。