Stored procedures 动态Sql错误,靠近'的语法无效&燃气轮机';
我有下面的动态sql语句,我得到了“>”附近的错误语法。错误消息。我无法找出问题所在,不确定是否缺少记号。我尝试添加额外的记号,但似乎没有任何效果Stored procedures 动态Sql错误,靠近'的语法无效&燃气轮机';,stored-procedures,sql-server-2012,Stored Procedures,Sql Server 2012,我有下面的动态sql语句,我得到了“>”附近的错误语法。错误消息。我无法找出问题所在,不确定是否缺少记号。我尝试添加额外的记号,但似乎没有任何效果 Declare @filters varchar(max) SET @filters = 'Where PaymentAmount > 0' BEGIN SET @filters = @filters + ' AND CONVERT(DATE, AccountingDate) >= '''+ cast @BeginDate as nva
Declare @filters varchar(max)
SET @filters = 'Where PaymentAmount > 0'
BEGIN
SET @filters = @filters + ' AND CONVERT(DATE, AccountingDate) >= '''+ cast @BeginDate as nvarchar) + ''''
SET @filters = @filters + ' AND CONVERT(DATE, AccountingDate) <= '''+ cast(@EndDate as nvarchar) + ''''
END
SET @SQLString = 'Select
,[ReturnDate]
,[PolicyNumber]
From dbo.Bil_ReturnsRepository' + @filters
EXEC(@SQLString)
Declare@filters varchar(最大值)
设置@filters='其中PaymentAmount>0'
开始
设置@filters=@filters+”并转换(日期,AccountingDate)>='''+将@BeginDate转换为nvarchar)+'''
设置@filters=@filters+”并转换(DATE,AccountingDate)在将@filters转换为@SQLString之前,您需要另一个空格
SET @SQLString = 'Select
,[ReturnDate]
,[PolicyNumber]
From dbo.Bil_ReturnsRepository ' + @filters
否则,生成的sql将是
...
From dbo.Bil_ReturnsRepositoryWhere PaymentAmount > 0
...
在将@filters转换为@SQLString之前,需要另一个空格
SET @SQLString = 'Select
,[ReturnDate]
,[PolicyNumber]
From dbo.Bil_ReturnsRepository ' + @filters
否则,生成的sql将是
...
From dbo.Bil_ReturnsRepositoryWhere PaymentAmount > 0
...
哇。非常感谢。我的眼睛因为从这个开始几个小时都在痛。哈哈。有时候需要一双新的眼睛。再次感谢!@Jason heh,我知道你的痛苦:)哇。非常感谢。我的眼睛因为从这个开始几个小时都在痛。哈哈。有时候需要一双新的眼睛。再次感谢!@Jason heh,我知道你的痛苦:)