No debe llamar a executeQuery(String)
en una PreparedStatement
, debe llamar a executeQuery()
en cambio. Esto está explícitamente prohibido por la API de JDBC, pero solo sale mal por accidente (debido al error de sintaxis) con MySQL Connector/J.
Tenga en cuenta que su consulta actual es el equivalente a:
select * from matrix where metric_name = ?
No veo una razón por la que usarías IN
aquí.