我有很多跨数据库视图。想要使用变量来修改数据库名称。
e.g。 电流:
SELECT field1, field2, field3, field4
FROM companyDB2.dbo.Company_Users AS Company_Users_1
需要: (PSEUDO CODE)
'SELECT field1, field2, field3, field4 FROM '
+ @companyDBname
+ '.dbo.Company_Users'
我最好使用表值UDF吗?
答案 0 :(得分:0)
动态SQL全有或全无......
set @sql = 'SELECT field1, field2, field3, field4 FROM ' + @companyDBname + '.dbo.Company_Users AS Company_Users_1'
exec @sql
允许执行exec(SQL注入)存在相当多的安全风险,请注意并做一些研究