Parameterized queries with RODBC
I have a variable in R that I would like to pass to a database. I could use paste
like many suggest when reading Google results, but that is unsafe because of SQL injection vulnerabilities. I'd rather prefer something like this:
x <- 42
sqlQuery(db, 'SELECT Id, Name FROM People WHERE Age > ?;', bind=c(x))
Is it possible to use parameterized queries with RODBC? If not, is there an alternative library that supports them?
I'm using SQL Server, RODBC 1.3-6 and R 3.0.0.
Mateusz Zoltak wrote RODBCext
package in 2014 (based on work by Brian Ripley and Michael Lapsley):
conn = odbcConnect('MyDataSource')
sqlPrepare(conn, "SELECT * FROM myTable WHERE column = ?")
sqlExecute(conn, 'myValue')
sqlFetchMore(conn)
Source: http://cran.r-project.org/web/packages/RODBCext/vignettes/Parameterized_SQL_queries.html