問題背景
項目要連接oracle數據,采用的是durid連接池,但是基本配置下來,運行時發現了這個錯誤。
方案
可能有的一個錯誤就是,拼湊sql時候,漏了空格什么的。
但是我這只是連個數據庫,還沒有涉及到sql查詢之類的啊?
解決
在配置application.yml時,對druid的配置會有這樣一個字段validationQuery。
validationQuery是用來驗證數據庫連接的查詢語句,這個查詢語句必須是至少返回一條數據的SELECT語句。每種數據庫都有各自的驗證語句。
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 |
所以,我的出錯是這個原因,哈哈哈。