首页 > 解决方案 > SQL Server 替换整个未知字符串列

问题描述

我正在尝试替换 SQL Server 中列的整个字符串。我不知道确切的字符串是什么。因此,我没有成功使用“REPLACE”。

CREATE PROCEDURE insertHTML
    @html_section nvarchar(50),
    @html_content nvarchar(4000)
AS
BEGIN
    SET NOCOUNT ON;

    UPDATE html 
    SET html_content = REPLACE(html_content, '', @html_content)
    WHERE html_section = @html_section
END

标签: sql-servertsqlstored-procedures

解决方案


如果你想replace the entire string,只需UPDATE像这样执行:

go
create procedure insertHTML
    @html_section   nvarchar(50),
    @html_content   nvarchar(4000)
AS
BEGIN
    SET NOCOUNT ON;
    UPDATE html SET html_content = @html_content
    WHERE html_section = @html_section
END

可能会起作用,replace但会更慢:

SET html_content = REPLACE(html_content, html_content, @html_content)

这是一种overkill你只需要改变一个值。


推荐阅读