关于sqlervser中全局临时表,在调用之后不定时自动清除!非常奇怪!烦请高人指教! 连接1:创建全局临时表select * into ##1 from sysobjects 新建连接2:查询全局临时表select * from ##1 成功!关闭连接1后,再次在连接2上查询全局临时表select * from ##1 失败!因为不同的存储过程之间调用了临时表,造成了有时可以查询出数据,但有时就查不不到。而且非常没有规律行 所有建议楼主不要用临时表,而用实际存在的表,每次查询或者创建的时候先判断! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ojuju10 说的我理解了。不过,我应该怎么控制连接何时断开呢? 对于全局临时表,一下是联机帮助的一段话:“如果在创建全局临时表的连接断开前没有显式地除去这些表,那么只要所有其它任务停止引用它们,这些表即被除去。当创建全局临时表的连接断开后,新的任务不能再引用它们。”所以楼主在程序中先调用存储过程1,在调用存储过程2,应该每一次都成功查到数据的。我认为导致失败有两种可能:1:你的第一个存储过程中,没有判断时候已经存在,直接就创建全局临时表,建议添加判断的SQL2:在程序中请保证两个存储过程都是在同一个数据库连接中执行的,就是保证你的程序只有一个数据库连接。 回答narsh:1:我在执行存储过程1时有判断,有判断。(抱歉没有贴上来)2:只有一个数据库连接的含义,具体指怎么的连接形式? 为何有这些进程信息? 请教sql2000数据库问题 一个很难很难的查询,不知道能不能实现? SQLServer2005 关于ntext的问题 存储过程中,如何判断插入成功 这一句如何排序? 从文件内容提取批量查询条件?可行么? 表中有一个time字段,是datetime类型,现在要把Getdate()减去那个字段的时间后返回秒数,sql怎么写? MSSQL如何删除多行数据库 我有一个mysql的数据库备份文件,请问这么才能将这个备份文件导入到sql server 2005中 如何检查SQL Server Agent服务是否启动?
我认为导致失败有两种可能:
1:你的第一个存储过程中,没有判断时候已经存在,直接就创建全局临时表,建议添加判断的SQL
2:在程序中请保证两个存储过程都是在同一个数据库连接中执行的,就是保证你的程序只有一个数据库连接。
1:我在执行存储过程1时有判断,有判断。(抱歉没有贴上来)
2:只有一个数据库连接的含义,具体指怎么的连接形式?