今天,在sql server 2008 中,在一个存储过程中创建了一个临时表#table1,打算在另外一个存储过程中使用这个临时表。可是悲剧的是,怎么都失败。更晕的是,我是在一个ASP.NET项目中调用的存储过程。其中调试错误的艰辛。。~~~~(>_<)~~~~

谁用谁知道啊!

查了资料,才知道原来这里需要用全局表变量##tablel1。其中的概念解释如下:

本地临时表的名称以单个数字符号 (#) 打头;它们仅对当前的用户连接是可见的;当用户从 Microsoft? SQL Server? 2000 实例断开连接时被删除。全局临时表的名称以数学符号 (##) 打头,创建后对任何用户都是可见的,当所有引用该表的用户从 SQL Server 断开连接时被删除。

最让我不明白的是:我的2个存储过程都是一个连接啊!按照这个解释是可见的啊!!

不理它了。我个人的感觉就是#table 类似于@table;##table 类似于@@table。这样的话,就解释通了。不知道理解的对不对?!

 

相关文章:

  • 2021-12-27
  • 2022-12-23
  • 2021-11-11
  • 2021-11-15
  • 2022-02-02
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-11-14
  • 2021-07-09
  • 2021-11-23
  • 2021-08-20
  • 2021-10-18
  • 2021-09-27
相关资源
相似解决方案