Det finns två sätt att lösa detta:
-
ställ in anslutningens
noAccessToProcedureBodies=true
egendomTill exempel som en del av anslutningssträngen:
jdbc:mysql://ipaddress:3306/test?noAccessToProcedureBodies=true
JDBC-drivrutinen kommer sedan att skapa "INOUT"-strängar för argumenten utan att kräva metadata som undantaget säger.
-
Ge
SELECT
privilegier påmysql.proc
till databasanvändarenTill exempel i mysql-prompten:
GRANT SELECT ON mysql.proc TO 'user'@'localhost';
Naturligtvis skulle detta tillåta applikationen att läsa hela
mysql.proc
tabell som innehåller information om alla lagrade procedurer i alla databaser (inklusive källkod).