Neměli byste volat executeQuery(String)
na PreparedStatement
, měli byste zavolat executeQuery()
namísto. To je explicitně zakázáno rozhraním API JDBC, ale dojde k chybě pouze náhodou (kvůli syntaktické chybě) s MySQL Connector/J.
Všimněte si, že váš aktuální dotaz je ekvivalentem:
select * from matrix where metric_name = ?
Nevidím důvod, proč byste měli používat IN
zde.