sql - 查看从存储过程创建的临时表

标签 sql sql-server stored-procedures

我在SQL 2005中有一个存储过程。该存储过程实际上是在SP的开头创建临时表并在最后删除它。我现在正在 VS 2005 中调试 SP。在 SP 之间我想知道临时表中的内容。任何人都可以帮助在运行时查看临时表的内容吗?

谢谢 维诺德T

最佳答案

临时表有好几种,我认为你可以使用SP使用后不被删除的表。只需确保不要两次调用同一个 SP,否则在尝试创建现有表时会出现错误。或者在看到临时表的内容后删除它。因此,不要使用表变量 (@table),只需使用 #table##table

<小时/>

来自http://arplis.com/temporary-tables-in-microsoft-sql-server/ :

本地临时表

  • 本地临时表前缀以单个数字符号 (#) 作为其名称的第一个字符,例如 (#table_name)。
  • 本地临时表仅在当前 session 中可见,或者您可以说它们仅对用户的当前连接可见。 当用户与 Microsoft SQL Server 实例断开连接时,它们将被删除。

全局临时表

  • 全局临时表前缀以双数字符号 (##) 作为其名称的第一个字符,例如 (##table_name)。
  • 全局临时表对所有 session 都可见,或者您可以说它们在创建后对任何用户都可见。
  • 当引用该表的所有用户与 Microsoft SQL Server 断开连接时,它们将被删除。

关于sql - 查看从存储过程创建的临时表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/126012/

相关文章:

mysql - SQL = vs LIKE vs LIKE BINARY,不区分大小写

php - 更改用户密码表格

java - 从 Java 程序找出 IBMi DB2400 表的约束的最佳方法是什么?

sql - 使用 SQL Server 作为具有多个客户端的数据库队列

sql - 在不使用 ORDER BY 子句的情况下以相同的顺序获取记录

sql-server - 消失的存储过程

mysql - 遇到条件时如何使用sql查询数据?

Python - 从Sql Server语句中的字段获取值

c# - 将值传递给 ObjectParameter 变量

tsql - 使用 varchar(max) 作为存储过程参数是个好主意吗?