方法一:
varchar和nvarchar类型是支持replace,所以如果你的text不超过8000可以先转换成前面两种类型再使用replace 替换 text ntext 数据类型字段的语句 。
update 表名 set 字段名=replace(cast(与前面一样的字段名 as varchar(8000)) ,'原本内容','想要替换成什么')
方法二:
update [表名] set 字段名 = replace(与前面一样的字段名,'原本内容','想要替换成什么')
估计你是没理解replace的意思
譬如你举例的这几个
update 表名 set 字段名=replace(字段名,'aaaa','cccc');
这样以后
aaaaxxxbbb 变成 ccccxxxbbb
aaaamtbbb 变成 ccccmtbbb
替换的是里边的aaa
你那么写不知道你要改什么,如果你只要改aaa*bbb的那种可以在后边加where条件
update 表名 set 字段名=replace(字段名,'aaaa','cccc') where 字段名 like 'aaa*bbb'
当然,这个模糊查询是access里的,如果是sqlserver或oracle等,那个*是要替换成%的
----补充----
按你说的意思
access:
update 表名 set 字段名='A' where 字段名 like 'aaa*bbb'
sqlserver或oracle:
update 表名 set 字段名='A' where 字段名 like 'aaa%bbb'
update [表名] set [字段名]=stuff([字段名],charindex('aaaa',[字段名],0),charindex('bbb',[字段名],0)-charindex('aaaa',[字段名],0)-4+7,'A'),
where [字段名] like '%aaaa%bbb%'
就是用charindex取得'aaaa','bbb'的位置,计算需要替换字符串的长度,然后用stuff函数替换.
你那样肯定不行。
update table[表名] set Fields[字段名]='要替换成的内容' where Fields[字段名] like 'aaa%bbb'