在 Visual Studio 中通过自定义查询导入 table 时出现无效对象错误

Invalid Object Error while importing table via Custom Query in Visual Studio

在构建我的表格模型时,我通过 select 语句创建我的 table,该语句 selecting 来自我在同一查询中创建的临时 tables , 所以:

在自定义 SQL 查询 window 中,我提交了我的查询:

creates 3 Temp tables, 
populates the temp tables, 
selects from the temp tables, 
then proceeds to drop the temp tables. 

我尝试 运行 SSMS 中的完整查询并且它成功运行,但是在 Visual Studio 中,当我输入查询并单击 "Validate" 错误消息 "Invalid object name 'TempTable1"出现。

https://imgur.com/a/Hke7djG

我还使用不同的 select 语句加载了其他 tables,尽管它们没有利用任何临时 tables 并且它们已经成功运行。

我是不是做错了什么?如何获得使用 temp tables 在我的表格模型中加载 table 的 select 语句?

您可以将其转换为存储过程并作为SQL 语句执行,而不是在表格模型中保存SQL。然后,您可以使用 SP 中的临时表执行必要的工作。这可以通过如下典型的 EXEC 语句来完成。

EXEC YourDatabase.YourSchema.YourSP

此问题是表格模型的 Analysis Services 1200 兼容性级别的错误。使用新的兼容级别,您可以很好地导入自定义查询。