Usando uma variável em vez de um índice de parâmetro com uma instrução preparada JDBC
Em muitas linguagens de programação, algo assim é possível para instruções preparadas:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ${name}");
statement.setString("name", "IBM");
Mas não com java.sql.PreparedStatement. Em Java, é necessário usar índices de parâmetro:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ?");
statement.setString(1, "IBM");
Existe uma solução para trabalhar com variáveis de string, como no primeiro exemplo? "$ {. *}" Não é usado em algum outro lugar na linguagem SQL ou há algum conflito? Porque então eu iria implementá-lo sozinho (analisando a string SQL e substituindo todas as variáveis por "?" E, em seguida, fazendo isso da maneira Java).
Atenciosamente, Kai