首页 > 解决方案 > RSQLite 参数化查询

问题描述

我正在使用该库RSQLite,并且正在努力理解如何使用该函数的params参数dbGetQuery()

按照文档,我可以对查询的 WHERE 语句进行参数化,但我无法对表名或列执行相同的操作。

library(RSQLite)

con <- dbConnect(RSQLite::SQLite(), ":memory:")

dbWriteTable(con, "mtcars", mtcars)

dbGetQuery(con, "SELECT COUNT(*) FROM mtcars WHERE cyl = ?", params = list(1:8))

dbGetQuery(con, "SELECT * FROM ?", params = list("mtcars"))
dbGetQuery(con, "SELECT ? FROM mtcars", params = list("cyl"))

dbDisconnect(con)

最后两个查询有什么问题?我知道可以使用不同的方法(paste(),glue::glue()等),只是想了解问题。

谢谢

标签: rrsqlite

解决方案


推荐阅读