我想替换表格中的列文本
我试过了:
select replace([article], '<p> </p>', '') from Articles
update Articles
set article = replace(article, '<p> </p>', '')
where article like '<p> </p>'
or
UPDATE [AJA].[dbo].[Articles]
SET [article] = ' '
WHERE [article] = '<p> </p>'
GO
每次出现错误时都会出现:
参数1在替换
中无效
它出了什么问题?
感谢您的帮助
答案 0 :(得分:6)
我查看了您使用两种数据类型验证的问题,即
答案 1 :(得分:3)
您收到此错误是因为您有文本数据类型。使用varchar数据类型 您的查询工作正常。
您需要从text to varchar
转换字段才能使用替换功能。
Declare @mytable table
(
Article text
);
INSERT into @mytable VALUES('<p> </p>');
INSERT into @mytable VALUES('<p> </p>');
INSERT into @mytable VALUES('<p> </p>');
INSERT into @mytable VALUES('<b> </b>');
select replace(cast([article] as VARCHAR(8000)),'<p> </p>','')
from @mytable
where Article LIKE '<p> </p>'
答案 2 :(得分:0)
试试这个
UPDATE Articles SET article = REPLACE(article, '<p> </p>', '')
另一方的工作也取代了。