让我们说我有这样的查询:有没有办法将表名指定为字符串?
SELECT * FROM
(
SELECT * FROM
(
SELECT * FROM DB.dbo.Table
)
INNER JOIN DB.dbo.Table ON ...
我通过手动改变无处不在的字符串不同的表多次运行此查询。我试着声明如下:
DECLARE @tablename AS VARCHAR(255)
SET @tablename = 'DB.dbo.Table'
但是,这似乎并没有工作,因为它引发了我的错误,说我需要声明@tablename
作为表变量之前,我可以使用它。我如何模拟我的表名,如果可能的话,Intellisense是否仍然有效?
+1。感谢您提及依赖注入。 –