Verwendung einer Variablen anstelle eines Parameterindex mit einer JDBC-vorbereiteten Anweisung
In vielen Programmiersprachen ist für vorbereitete Anweisungen so etwas möglich:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ${name}");
statement.setString("name", "IBM");
Aber nicht mit java.sql.PreparedStatement. In Java muss man Parameterindizes verwenden:
PreparedStatement statement = connection.prepareStatement(
"SELECT id FROM Company WHERE name LIKE ?");
statement.setString(1, "IBM");
Gibt es eine Lösung für die Arbeit mit Zeichenfolgenvariablen wie im ersten Beispiel? Wird "$ {. *}" In der SQL-Sprache nicht an anderer Stelle verwendet, oder gibt es Konflikte? Denn dann würde ich es selbst implementieren (die SQL-Zeichenfolge analysieren und jede Variable durch "?" Ersetzen und dann auf Java-Art und Weise ausführen).
Grüße Kai