有可能的?
DECLARE @vTableName varchar(50)
SET @vTableName = (SELECT TableName FROM qms_Types WHERE Id = 1)
SELECT * FROM @vTableName
我有这个错误:
Msg 1087, Level 16, State 1, Line 3 Must declare the table variable "@vTableName".
最佳答案
简短答案:不可以。
长答案:Noooooooooooooooooooooooooooooooooooooooo。如果需要,可以使用动态SQL,但是如果您以某种方式事先不知道表名的方式来构造表,那么重新考虑架构可能会有所帮助。
这是学习如何使用动态SQL的重要资源:The Curse and Blessings of Dynamic SQL
关于sql-server-2008 - SQL Server 2008 SELECT * FROM @变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10030486/