首页 > 数据库 >多数据源配置时validationQuery的问题(errorCode 923, state 42000 java.sql.SQLSyntaxErrorException: ORA-00923: 未找

多数据源配置时validationQuery的问题(errorCode 923, state 42000 java.sql.SQLSyntaxErrorException: ORA-00923: 未找

时间:2022-11-19 21:12:07浏览次数:37  
标签:jdbc validationQuery 数据源 数据库 druid errorCode postgresql select

起初,数据库配置为:

datasource: 
          master: 
            url: jdbc:postgresql://ip:5432/databaseName
            username: **
            password: **
            driver-class-name: org.postgresql.Driver

当我为项目新增Oracle数据库的连接时,报错如下:

2022-11-19 20:54:48.602 [Druid-ConnectionPool-Create-1602711561] ERROR com.alibaba.druid.pool.DruidDataSource:2699 - create connection SQLException, url: jdbc:oracle:thin:@ip:1521/**, errorCode 923, state 42000
java.sql.SQLSyntaxErrorException: ORA-00923: 未找到要求的 FROM 关键字

问题原因:

druid的数据库配置validationQuery的属性值出错,对于不同的数据库,validationQuery的值是不同的。druid通过validationQuery来判断数据库联通性的,所以validationQuery的值是在当前配置数据库中执行查询,返回不为空数据的一句sql。

DataBase   validationQuery
hsqldb select 1 from INFORMATION_SCHEMA.SYSTEM_USERS
Oracle  select 1 from dual
DB2  select 1 from sysibm.sysdummy1
MySql select 1
Microsoft SqlServer  select1
postgresql  select version()
ingres select 1
derby values 1
H2 select 1

 

解决办法:

datasource: 
          master: 
            url: jdbc:postgresql://**:5432/db20181301?currentSchema=**
            username: **
            password: **
            driver-class-name: org.postgresql.Driver
            druid:
              validationQuery: select 1
          # 多数据源配置   
          slave:
            url: jdbc:oracle:thin:@ip:1521/**
            username: **
            password: **
            driver-class-name: oracle.jdbc.OracleDriver
            druid:
              validationQuery: select 1 from dual

 

标签:jdbc,validationQuery,数据源,数据库,druid,errorCode,postgresql,select
From: https://www.cnblogs.com/BeenTogether/p/16907073.html

相关文章

  • MyBatisPlus 多数据源动态切换
    一、官方文档https://baomidou.com/pages/a61e1b/#%E6%96%87%E6%A1%A3-documentation二、操作步骤1、引入依赖版本号在下面 懒得单独复制了 一起贴出来了<!......
  • ArcGIS10.8版本里面,提示数据源缺少空间参考信息,不能投影,如何解决?
    明明在Arcgis10.2版本中打开shapefiles投影是正常的。  但到了ArcGIS10.8版本里面却提示数据源缺少空间参考信息,不能投影!!!经研究发现ArcGIS10.8版本竟然不能读取带B......
  • Spring--案例:数据源对象管理
    案例:数据源对象管理对于已经学过数据库的我来说,这看起来就像是连接数据库的操作;就像javaweb项目里面的db.properties文件的使用一样,我们需要先导入一个包,(我用的是Maven项......
  • 数据源太多,报表工具该如何兼容?
    现代应用已经进入多数据源阶段了,不再是一个单一的数据库包打天下,一个应用中会涉及除关系数据库外各种数据源,如文本文件类数据、NOSQL、多维数据库、HTMLWebservice等等,即......
  • 数据源太多,报表工具该如何兼容?
    现代应用已经进入多数据源阶段了,不再是一个单一的数据库包打天下,一个应用中会涉及除关系数据库外各种数据源,如文本文件类数据、NOSQL、多维数据库、HTMLWebservice等等,即使......
  • qliksense设置数据源
    1.进入软件点击editscript2.点击tools-ODBC设置   3.选择SQLSERVER或其他的数据库  ......
  • 联通DataOps和MLOps:将机器学习推理作为新的数据源
    【编者按:随着大数据和AI的关注重点转向工程化和能效,DataOps和MLOps逐渐兴起。DataOps侧重于提高数据分析质量、缩短数据交付周期,MLOps侧重于快速交付AI模型。数据是AI开发生......
  • 多数据源程序开发
    多数据源程序开发由于读写分离,主从实时备份等业务场景的需要,往往在开发数据库应用时,要配置多个数据源。本文结合springboot,mybatis等应用框架,实现多数据源应用程序。在......
  • 多数据源配置MyBatisPlus(十八)
    二八佳人体似酥,腰间仗剑斩愚夫。虽然不见人头落,暗里教君骨髓枯。上一章简单介绍了多数据源配置MyBatis(十七),如果没有看过,​​请观看上一章​​工作中,在业务的发展或业务......
  • 多数据源配置JdbcTemplate(十五)
    二八佳人体似酥,腰间仗剑斩愚夫。虽然不见人头落,暗里教君骨髓枯。上一章简单介绍了SpringBoot整合MyBatisPlus(十四),如果没有看过,​​请观看上一章​​工作中,在业务的发展......