gpt4 book ai didi

sql - 在 OPENROWSET 查询中使用变量

转载 作者:行者123 更新时间:2023-12-01 19:31:57 24 4
gpt4 key购买 nike

我在执行此查询时遇到问题:

SELECT * 
FROM OPENROWSET(
'SQLNCLI',
'DRIVER={SQL Server};',
'EXEC dbo.sProc1 @ID = ' + @id
)

报错:

Incorrect syntax near '+'.

有人知道为什么我会收到此错误吗?

最佳答案

按照 Scott 的建议,您不能在 OPENROWSET 中使用表达式。尝试创建动态 sql 来传递参数

Declare @ID int
Declare @sql nvarchar(max)
Set @ID=1
Set @sql='SELECT *
FROM OPENROWSET(
''SQLNCLI'',
''DRIVER={SQL Server};'',
''EXEC dbo.usp_SO @ID =' + convert(varchar(10),@ID) + ''')'

-- Print @sql
Exec(@sql)

关于sql - 在 OPENROWSET 查询中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13831472/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com