SQL java.sql.SQLException: Parameter metadata not available for the given statement

common_util發表於2016-09-21

問題:java.sql.SQLException: Parameter metadata not available for the given statement

意思說:對於給定語句的引數後設資料不可用(連線資料庫時的URL需要加上後設資料型別

generateSimpleParameterMetadata=true (生成簡單的引數後設資料)


這裡寫上generateSimpleParameterMetadata=true 就解決了。

eg:jdbc.url=jdbc:mysql://192.168.0.221:3306/demo?useUnicode=true&generateSimpleParameterMetadata=true

預設情況下是為false的,下面兩種情況是一樣的:

eg:jdbc.url=jdbc:mysql://192.168.0.221:3306/demo?useUnicode=true&generateSimpleParameterMetadata=false

eg:jdbc.url=jdbc:mysql://192.168.0.221:3306/demo?useUnicode=true


因為mysql驅動預設generateSimpleParameterMetadata=false只有設定為true metadata型別會將每一個引數反射為Varchar型別


可能參考什麼是資料庫的後設資料:

http://baike.baidu.com/link?url=F8uhezUUTC4aXBrxBQ7b2pgSaSll6xTgEZf1whRK9ycH_buh2ClqLoOoI50RPxKZhM1qR2aehM0YsHzTQmDpY_

相關文章