我想在 sp_executesql 中使用 IN 操作符,但遇到“'”附近语法不正确的错误@TagIndexListToAdjust
。
此错误是由于参数值'(1,2,3)' 两边的单引号引起的。
我只需要修复它,sp_executesql
因为这个查询是由 C# 模型类生成的。
USE [master]
GO
IF EXISTS (SELECT *
FROM sys.objects
WHERE object_id = OBJECT_ID(N'[dbo].[Persons]') AND type in (N'U'))
DROP TABLE [dbo].Persons
GO
USE [master]
GO
CREATE TABLE Persons
(
commaList nvarchar(MAX),
);
insert into Persons values ('1')
insert into Persons values ('2')
insert into Persons values ('3')
GO
exec sp_executesql N'
Select *
from Persons
where commaList in @TagIndexListToAdjust',
N'@TagIndexListToAdjust varchar(67)',
@TagIndexListToAdjust='(1,2,3)'
任何帮助都将用于修复错误。