日期:2014-05-18  浏览次数:20504 次

sql2000 ntext字段无法使用update更新吗?
报字符太长

------解决方案--------------------
超出列的属性的最大字符
------解决方案--------------------
try:
ntext类型用于存储> 8000字节的纯文本数据,最大可达2G,所以超过这个范围的可能性比较小。应该考虑用函数:UPDATETEXT.

因为当数据不超过8000时,在select ,update ,insert语句中可以应用NTEXT这种类型,但是要遵行一些规则:如不能在where group by ,distinct 子句中直接引用 等看看你是不是错在这里
当》8000 则要分块处理了 系统自带了很多函数:READTEXT、WRITETEXT UPDATETEXT等;帮助里面有。
小例一个:


使用 UPDATETEXT 语句更新 ntext、text 或 image 列的特定数据块。
例如,以下查询用字母 z 取代 New Moon Books 中 text 列的第 88 个字符(Moon 中的第二个字母 o):

USE pubs
sp_dboption 'pubs ', 'select into/bulkcopy ', 'true '
DECLARE @ptrval varbinary(16)
SELECT @ptrval = TEXTPTR(pr_info)
FROM pub_info pr INNER JOIN publishers p
ON p.pub_id = pr.pub_id
AND p.pub_name = 'New Moon Books '
UPDATETEXT pub_info.pr_info @ptrval 88 1 'z '
sp_dboption 'pubs ', 'select into/bulkcopy ', 'false '