21

##TheTable我使用 C# 代码创建了一个全局临时表(即)。代码完全运行后,我希望能够在 SQL Server Management Studio 中看到该临时表。

是否有可能做到这一点 ?如果是,那么如何?

4

3 回答 3

26

所有临时表都记录在 SQL server > Databases > System Databases > tempdb -> Temporary Tables 下

于 2014-01-29T19:07:07.920 回答
6

代码完成并关闭会话后,临时表将不复存在。如果要在 SQL Server Management Studio (SSMS) 中查看它,则需要保持代码会话打开,直到在 SSMS 中查看数据。

根据Technet

全局临时表在创建后对任何用户和任何连接都是可见的,并在引用该表的所有用户与 SQL Server 实例断开连接时被删除。

作为替代方案,这里有一个 C# 代码选项,可将临时表中的数据选择到代码变量中,以便在代码中查看...(如果代码存在,您可以将其写入文件或通过以下方式查看另一种方式) - 见:https ://stackoverflow.com/a/6748570/3063884

于 2014-01-29T19:30:26.180 回答
3

创建测试表

SELECT * INTO ##temp1
FROM dbo.SomeTable_Name

现在检查表是否存在

SELECT  * FROM tempdb.dbo.sysobjects O
WHERE O.xtype in ('U') 
AND O.ID = OBJECT_ID(N'tempdb..##temp1')
于 2014-01-29T19:38:51.970 回答