数据库其它

关注公众号 jb51net

关闭
首页 > 数据库 > 数据库其它 > dbeaver创建create临时表

dbeaver创建create临时表之后查询不到问题排查及解决方案

作者:泥水沟的胖头鱼

文章介绍了在使用DBeaver创建临时表后无法查询到数据的问题排查过程,主要步骤包括检查表名唯一性、确认会话正确性、清理会话、检查权限、语法检查以及刷新视图或重启工具,感兴趣的朋友跟随小编一起看看吧

前提:一共有三张表,表一和表二和表三

需求是要拿表一和表二的查询结果和表三进行关联查询

所以写了sql如下

CREATE TEMPORARY TABLE temp_reports AS 
SELECT gr.*,
       sd.dept_id,
       sd.parent_id
FROM pc_amount_report gr
LEFT JOIN sys_dept sd ON gr.comp_id = sd.dept_id
WHERE gr.report_year = 2022
  AND gr.report_month = 5
  AND (
      sd.dept_id = (
          SELECT dept_id 
          FROM sys_dept 
          WHERE dept_name = '某某某
      )
      OR sd.parent_id = (
          SELECT dept_id 
          FROM sys_dept 
          WHERE dept_name = '某某某'
      )
  );
SELECT  pt.* FROM  pc_amount_report_task pt
LEFT JOIN temp_reports tr
ON pt.pc_amount_report_task_id = tr.pc_amount_report_task_id
   AND pt.plan_id = tr.plan_id
   and pt.approval_company_code=tr.approval_company_code
    and pt.approval_company_name=tr.approval_company_name
     and pt.report_year=tr.report_year

可是执行完一之后,用select * from 临时表temp_reports ,可以查处来数据,然后在数据库搜索框搜索表名却一直无法搜索出来,所以导致第2段sql无法执行

最后发现竟然是没有建表的权限,也真是无语

如果你和我一样,无法执行sql,可以参考下面的原因进行排查

报错信息 "already exists" 通常意味着你尝试创建的临时表已经存在于数据库中。

解决方法:

如果你确认临时表不存在,但仍然收到错误消息,可以尝试以下步骤:

如果这些步骤都不能解决问题,可能需要联系数据库管理员或查看数据库日志以获取更多信息。

到此这篇关于dbeaver创建create临时表之后查询不到问题排查的文章就介绍到这了,更多相关dbeaver创建create临时表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文