一个报表多个数据查询,每个数据查询都使用了相同名字的sql临时表,为什么会出现偶发性冲突

image.png

image.png

image.png

image.png

我的每个报表的查询结果,都使用了#A01这个临时表,但是按数据库官方解答,#是会话临时表,单个查询结束会话关闭临时表会自动清除。而且我每个查询都先判断了临时表是否存在,存在的话先删除再创建新的一个临时表,为什么会偶发出现临时表字段不存在的问题呢? 多刷新几次又正常了。只是偶发的。有没大神知道是咋回事呢

FineReport 忧郁的八哥 发布于 2024-2-20 09:10
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
忧郁的八哥Lv3见习互助
发布于2024-5-5 17:13

临时表名称全部改成不一样了

最佳回答
0
CovidLv3高级互助
发布于2024-2-20 09:12

换存储过程来处理

  • 忧郁的八哥 忧郁的八哥(提问者) 存储过程会自动释放吗 ?啥原理呢
    2024-02-20 09:39 
  • Covid Covid 回复 忧郁的八哥(提问者) 啥原理不清楚,反正可以处理这个问题
    2024-02-20 09:41 
  • 忧郁的八哥 忧郁的八哥(提问者) 回复 Covid 好吧,谢谢。 我的想法是,把所有临时表名字都改成不一样。 这样就不会有冲突了,就是报表太多,改动太多了,使用存储过程的话,也是工作量大
    2024-02-20 09:51 
  • 0关注人数
  • 233浏览人数
  • 最后回答于:2024-5-5 17:13
    请选择关闭问题的原因
    确定 取消
    返回顶部