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