MS SQL批量修改字段中的文字?

来源:百度知道 编辑:UC知道 时间:2024/06/17 08:20:16
我想批量修改字段中的文字,如把“你好”改成“您好”,我写的程序在SQL查询分析器里运行:
Update list_book Set list_all=Replace(list_all,'你好','您好')
提示出错:
服务器: 消息 8116,级别 16,状态 1,行 1
函数 replace 的参数 1 的数据类型 text 无效。

是什么原因啊?我写错了吗?

replace里不可以使用text类型。
在SQL2005里,可以:
Update list_book Set list_all=Replace(CAST(list_all AS varchar(max)),'你好','您好')

Update list_book Set list_all='您好' WHERE list_all='你好'

replace对text类型的列不能操作 该个数据类型

把这句执行下:
update list_book set list_all='您好' where list_all in (
select list_all from list_book where list_all='你好')
如果你的list_book是视图的话,就要修改想对应的表的数据了,修改方法跟上面一样。