从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 ...