Вы должны быть в безопасности, если вы использовали параметризованные операторы в RSQLite
(dplyr не имеет к этому никакого отношения), то есть потенциально опасные данные задаются в качестве отдельного аргумента и не помещаются непосредственно в текст запроса.RSQLite собирается убедиться, что значения правильно экранированы, чтобы избежать SQL-инъекций.
Документация содержит примеры таких запросов, здесь с действием delete
, но его можно перенести в вставку..
rs <- dbSendStatement(mydb, 'DELETE FROM iris WHERE "Sepal.Length" < :x')
## added: bind the actual data here:
dbBind(rs, param = list(x = 4.5))
dbGetRowsAffected(rs)