Регистрация подготовленного SQL-запроса в Groovy - PullRequest
0 голосов
/ 07 марта 2019

Мне нужно зарегистрировать мои подготовленные sql-запросы в groovy.

Чтобы избежать внедрения SQL и иметь автоматические кавычки (это важно), я использовал этот дизайн:

String name = "Bobby"
Integer status = 1    
def query = 'UPDATE my_tbl SET status=? WHERE name=?';
sql.execute (query, [status, name])

Как мне подготовить sql-запрос с моими параметрами? Могут ли быть другие решения?

1 Ответ

1 голос
/ 07 марта 2019

Я думаю, что вы хотите сделать, это записать в строку запроса параметры ?, замененные их значениями?Я не знаю, как это сделать в журналах приложений, но ваша база данных, вероятно, имеет журнал запросов, который может показать это.

Если вы используете перегруженную версию execute, вы можете достичь чего-то очень близкогок тому, что вы просите

Map params [status: 1, name: "Bobby"    
def query = 'UPDATE my_tbl SET status=? WHERE name=?';
log.debug "query: $query, params: $params"
sql.execute(params, query)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...