标题:请教一下:如果查询中产生的大量CURSOR,各位是怎么关闭的?
取消只看楼主
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
结帖率:86.67%
已结贴  问题点数:20 回复次数:2 
请教一下:如果查询中产生的大量CURSOR,各位是怎么关闭的?
用use in select(表名)只能针对一个表

有没有办法将符合条件的表名都关闭掉,如关闭所有以“TMP”开头的CURSOR
搜索更多相关主题的帖子: 表名 TMP CURSOR 查询 关闭 
2023-04-19 09:40
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用csyx在2023-4-19 10:45:54的发言:

自己写个循环呗
for ii = 1 to aused(aCsr)
  if like('TMP*', aCsr)
    use in select(aCsr)
 endif
endfor


对数据工作期这个定义理解不透,没想到是用aused()。
谢谢啦~
2023-04-19 13:27
shonken
Rank: 2
等 级:论坛游民
帖 子:95
专家分:21
注 册:2017-1-15
得分:0 
以下是引用sdta在2023-4-19 13:28:16的发言:

要养成良好的习惯,临时表用完后随时关闭,否则临时表会占用大量的内存,影响程序的运行速度。


是啊,基本都是用完就关闭临时表,最近的有个算法会产生一个序列的临时表,一个个的关闭就太烦了,才找方法
2023-04-19 14:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-511964-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.552307 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved