我有2个数据集查询和一个名为'database'的参数
如果'database'的值是'abc',它应该使用下面的语句
select * from abc.item
同时,如果'database'的值是'cba',它应该使用这个语句
select * from cba.item
最初,我尝试像这样传入参数
select * from ?.item
当然,这行不通。
我使用ODBC连接到一个iSeries
我假设返回的列对于abc和cba是相同的?
你必须动态地构建你的查询:
declare @param as varchar(25)
declare @sql as varchar(2000)
set @param = 'abc'
set @sql = 'select * from ' + @param + '.item'
exec (@sql)
您还可以通过为连接字符串
编写表达式来为两者创建一个公共数据集参考网址http://www.sqlservercurry.com/2011/06/dynamic-connection-string-in-sql-server.html