UPDATE错误:"参数数据类型文本对REPLACE的参数1无效"

Muf*_*ll2 17 sql-server

为什么我的查询出现此错误?

消息8116,级别16,状态1,行3
参数数据类型文本对于替换函数的参数1无效.

查询:

UPDATE 
    tableName
SET
    fieldName = REPLACE (fieldName, '&lt;', '<')
WHERE
    id = 100
Run Code Online (Sandbox Code Playgroud)

dar*_*rio 32

试试这个:

UPDATE tableName
SET fieldName = REPLACE (CONVERT(VARCHAR(MAX), fieldName), '&lt;', '<')
WHERE id = 100
Run Code Online (Sandbox Code Playgroud)

  • 两个答案都解决了问题,但他们没有提到原因(看看马克的评论)。此外,错误消息本身也说明了原因。 (2认同)