我正在调试一个在SQL Server 2008上的存储过程,代码如下:
INSERT INTO #tempTable (ID, Name)
SELECT ID, Name FROM dbo.MYTABLE WHERE dbo.MYTABLE.Old >= 15
我该如何在调试时查看#tempTable中的数据?
我正在调试一个在SQL Server 2008上的存储过程,代码如下:
INSERT INTO #tempTable (ID, Name)
SELECT ID, Name FROM dbo.MYTABLE WHERE dbo.MYTABLE.Old >= 15
--inserting data into temp table
INSERT INTO #tempTable (ID, Name)
SELECT ID, Name FROM dbo.MYTABLE WHERE dbo.MYTABLE.Old >= 15
--to see records of temp table
DECLARE @temptable XML
SET @temptable = (SELECT * FROM #@temptable FOR XML AUTO)
2) 您可以将本地临时表(#temptable
)转换为全局临时表(##temptable
),因此当您在临时表中插入数据时,您可以打开新的查询窗口,并能够使用 select 查询查看全局临时表记录。
尽管SQL Server Management Studio具有一些调试功能,但我认为它们相当无用。
我认为没有像Visual Studio那样的SQL Server调试工具,可以在运行时提供逐步信息。
通常开发人员调试SQL Server代码的方式是使用打印语句,对于存储过程,取出sp定义,为每个参数声明一个变量,硬编码变量的值并执行较小的逻辑代码块以查看正在进行的情况。
SELECT * FROM #tempTable
,然后修改存储过程并继续进行调试。调试完成后,请注释或删除该语句。 - Lukasz Szozda