我创建了在 Microsoft SQL Server 中完美运行的查询,它利用了它创建和删除的临时表。我现在想在 Microsoft Excel 中创建一个数据连接,它将运行我的查询并在 Excel 中显示结果,以便不懂 SQL 的业务合作伙伴可以使用该报告。
但是,当我尝试在 excel 中的数据连接中运行查询时,出现如下错误:“数据库名称‘数据库’被忽略,正在引用 tempdb 中的对象。”
或者
“查询未运行,或无法打开数据库表。请检查数据库服务器或联系您的数据库管理员。确保外部数据库可用且未移动或重组,然后重试该操作。”
然后我在创建临时表之前尝试使用短语“SET NOCOUNT on”,但它没有解决问题,我仍然没有报告。
这是我的代码的设置方式
select
x.PRODUCT_ID,
y.SETID,
LW = ISNULL (SUM(y.SALES_QTY) ,0)
INTO database.#tmpLastWeek
--#tempLastWeek is a temporary table I am creating here and inserting values into
from
database.sales_table y
inner join
database.product_table x
on y.PRODUCT_ID = x.PRODUCT_ID
and x.SETID = y.SETID
where
y.stores IN (
'storeslist'
)
and y.sales_week = @this_week - 1
and y.sales_year = @this_year
group by
x.PRODUCT_ID,
y.SETID,
x.DESCR
然后我从临时表中选择#tmpLastWeek
select * from #tmpLastWeek
然后最后我删除了这个临时表,以便它可以再次运行
drop table #tmpLastWeek
任何有关在 Excel 中运行此查询和 SQL 连接的建议或建议将不胜感激!谢谢!!!!