У меня есть следующая проблема: когда я передаю GString в SQL.executeInsert, текстовые переменные автоматически не заменяются '
, поэтому запрос на вставку не выполняется:
String value4fa = "I would like to get know"
int value4fb = 2
def query = "INSERT INTO TAB_A (F_A, F_B) VALUES (${value4fa}, ${value4fb})"
sql.executeInsert(query);
Если я поставлю '
сам:
def query = "INSERT INTO TAB_A (F_A, F_B) VALUES ('${value4fa}', ${value4fb})"
Groovy сообщает мне, что я создал брешь в безопасности, поскольку Groovy не может использовать PreparedStatement для выполнения SQL-запроса.
Может ли кто-нибудь объяснить мне, как заставить Groovy правильно оценить тело запроса и подготовить переменные?