从Excel运行SQL Server过程

我正在使用SQL Server 2008 Enterprise。 我在一个数据库中创build了一个过程。 该过程由对不同数据库的多个查询组成,正在显示最终的组合结果集。

我尝试通过Excel来执行它,所以结果会自动出现在Excel工作表中,但是我收到错误:

查询没有运行,或者数据库表无法打开。 检查数据库服务器或联系您的DBA。 确保外部数据库可用并且尚未被移动或识别,然后再次尝试操作

我创build了一个简单的过程,只查询一个数据库,结果显示在Excel表单中,没有问题。

因此,我怀疑,原来的程序失败了,因为我正在查询过程中的几个数据库,当在“外部数据属性”的连接细节中,只提到一个数据库。

我的问题是 – 能解决吗? 我可以在程序中使用多个数据库并在Excel中查看吗?

谢谢你,Roni

我转换过程中有表variables,而不是临时表,我已经添加“设置nocount on”到过程的开始。

第二个行动解决了这个问题。

第一个行动提高了程序的响应时间。

(复制@ Roni的​​答案的关键部分)

create procedure dbo.xxx as set nocount on ...