SELECT * FROM XXX WITH ( TABLOCKX )
用了表锁以后,导致我最后返回的数据集里面有SELECT * FROM XXX,真搞不懂sqlserver还这样的,
我其实只是想返回这一个数据集 select * from #DDDTEMP
请问有什么办法让第一个锁表操作的数据集不返回。
7 回答
慕的地8271018
TA贡献1796条经验 获得超4个赞
SELECT * FROM 表明 WITH ( TABLOCKX )
存储过程最后一句是:select maxId from #T_MaxIdTEMP; DROP TABLE #T_MaxIdTEMP
这样导致返回是2张表 一张就是第一次锁表的语句返回的记录集 ,整个表多返回,第二张表才是我想要的,我觉得这样有点不合理的了,我锁表操作的东西你给我返回来做什么呢,有办法清除吗,我这张表以后的数据量是巨大的,他要是也给我反悔,那效率可想而知了。oracle那边是没问题的 后来公司要个sqlserver 版本感觉问题就来了,实在不行 我只能在这个存储在套一个存储过程了。哎 sqlserver真是无语,可能是我对sqlserver不够了解吧
- 7 回答
- 0 关注
- 599 浏览
添加回答
举报
0/150
提交
取消