Det finns två sätt att lösa detta:
-
ställ in anslutningens
noAccessToProcedureBodies=trueegendomTill exempel som en del av anslutningssträngen:
jdbc:mysql://ipaddress:3306/test?noAccessToProcedureBodies=trueJDBC-drivrutinen kommer sedan att skapa "INOUT"-strängar för argumenten utan att kräva metadata som undantaget säger.
-
Ge
SELECTprivilegier påmysql.proctill 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.proctabell som innehåller information om alla lagrade procedurer i alla databaser (inklusive källkod).