Uso de una variable en lugar de un índice de parámetros con una declaración preparada de JDBC
En muchos lenguajes de programación, algo como esto es posible para declaraciones preparadas:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ${name}");
statement.setString("name", "IBM");
Pero no con java.sql.PreparedStatement. En Java uno tiene que usar índices de parámetros:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ?");
statement.setString(1, "IBM");
¿Existe una solución para trabajar con variables de cadena como en el primer ejemplo? ¿No se usa "$ {. *}" En algún otro lugar del lenguaje SQL o hay algún conflicto? Porque entonces lo implementaría yo mismo (analizando la cadena SQL y reemplazando cada variable por "?" Y luego haciéndolo a la manera de Java).
Saludos, Kai