我在SQL Server中获得了很多临时分析请求,然后我将结果作为表或数据透镜在Excel中提供。通过在连接中保存SQL,可以为用户刷新这些报告。
在某些情况下,分析需要多层连接,并且使用一个SQL语句运行会非常耗时。当我创建临时表时,分析在可接受的时间内运行,但是当我然后创建与临时表的连接时,我收到错误"问题获取数据"。
当我使用临时表从同一个SQL创建存储过程时,Excel可以检索结果。然而,这不是最佳解决方案,因为随着时间的推移,我最终会在我的数据库中存在许多存储过程。我已经尝试过临时表和表变量,但都没有工作。为什么简单地将此SQL封装在存储过程中允许Excel处理结果?
有没有一个解决方案可以让我在excel中创建临时SQL,而不需要使用存储过程来回应临时问题来污染我的数据库?我想避开VBA,因为我试图让这个过程尽可能轻量化。
答案 0 :(得分:0)
将此行添加到SQL查询的顶部:
SET NOCOUNT ON
应该做的工作。