我有一个存在于链接服务器上的表,它有一个名为name的字段,我想在该字段上搜索名为Macy的字符串。我将其作为动态SQL执行: -
declare @Sql nvarchar(2000)
declare @searchName nvarchar(255)
SET @searchName = N'macy''s'
SET @sql = 'SELECT * from crm_opportunity o where o.NAME LIKE ''% ' + @searchName + '%'' ESCAPE '''''' '
exec (@sql).
换句话说,我试图逃避单引号。我收到错误消息102,级别15,状态1,行1's'附近的语法不正确。
任何想法和建议!
答案 0 :(得分:0)
加倍引号会转义字符,因此您可以在字符串值中使用它。
exec('select * from [dbo].[UsersTbl] where and UserType = ''CLT'' ')