如何将REPLACE与包含撇号的字符串一起使用?

0 sql-server string apostrophe

可能重复:
替换sql server中的单引号

所以我正在尝试使用以下代码:

UPDATE TableName
SET FieldName = REPLACE(FieldName, 'SearchFor', 'ReplaceWith');
Run Code Online (Sandbox Code Playgroud)

它非常适合我需要做的事情,除了我需要搜索的内容是"有效的驾驶执照".撇号似乎与代码不一致.我试过这样做:

'valid driver''s license'
Run Code Online (Sandbox Code Playgroud)

......但这似乎也不起作用.我收到以下错误:

Argument data type text is invalid for argument 1 of replace function.
Run Code Online (Sandbox Code Playgroud)

如果有人以前处理过这个,我会很乐意帮助你!这样可以节省我很多时间,而不是手动更新每条记录.-__-

埃莉

SPF*_*ake 7

该错误可以准确地告诉您问题所在.FieldName是一个类型的列text,它不适用于该REPLACE函数.尝试首先抛出VARCHAR(MAX)第一个参数,它应该工作.IE:

UPDATE TableName
SET FieldName = REPLACE(CAST(FieldName AS VARCHAR(MAX)), 'SearchFor', 'ReplaceWith');
Run Code Online (Sandbox Code Playgroud)