调试时获取临时表的数据

sql-server

1483 观看

2回复

154 作者的声誉

在调试时,我无法在sql server 2012中监视临时表的值。我正在获取所有变量的值,甚至可以打印出来但在临时表中苦苦挣扎。是否有任何方法可以查看临时表的值?

作者: Rahul Srivastava 的来源 发布者: 2017 年 9 月 15 日

回应 2


0

508 作者的声誉

SQL Server提供了临时表的概念,可以极大地帮助开发人员。这些表可以在运行时创建,并且可以执行一张普通表可以执行的所有操作。但是,基于表类型,范围是有限的。这些表是在tempdb数据库中创建的。

在调试时,您可以暂停SP,在DROP表语句之前在SP中写入select语句,#表可供查询。

从#temp中选择*

作者: The beginner 发布者: 2017 年 9 月 15 日

0

634 作者的声誉

我将此代码放在存储过程中,并且可以在“ Locals”窗口中看到临时表的内容。

INSERT INTO #temptable (columns) SELECT columns FROM sometable; -- populate your temp table
-- for debugging, comment in production
DECLARE @temptable XML = (SELECT * FROM #temptable FOR XML AUTO); -- now view @temptable in Locals window

这适用于较旧的SQL Server 2008,但较新的版本可能支持更友好的FOR JSON对象。信用:https : //stackoverflow.com/a/6748570/1129926

作者: Jeff Mergler 发布者: 2018 年 7 月 3 日
32x32