在R中,在查询到数据库的连接中引用.sql文件



我正在尝试更无缝地集成R和SQL的使用。好消息是,我从R到db2的连接运行良好,并且一直在使用RJDBC包来实现这一点

我还使用了dbGetQuery((函数,该函数包含sql查询。对于非常简单的查询,这一切都很好。

cr_tb1 <- dbGetQuery(conn, "SELECT * FROM LWFILES001.EVETRNPF LIMIT 100")

然而,我希望将复杂的sql查询排除在R代码之外,并将它们保存为函数可以引用的单独.sql。

我已经加载了squr库https://github.com/smbache/squr以便于参考。所以,我试过这样的方法,但出现了错误。

library(RJDBC)
library(squr)
drv <- JDBC("com.ibm.as400.access.AS400JDBCDriver",
"C:/temp/jt400.jar",
identifier.quote="`")
conn <- dbConnect(drv, "jdbc:as400://lwsi.XXXX.local/XXXXXX", "username", "password")
case_rate_query <- sq_file("SQL//test.sql")
cr_tb1 <- dbGetQuery(conn, case_rate_query)

错误如下:

(函数(类、fdef、mtable(中的错误:找不到签名的函数"dbGetQuery"的继承方法'"JDBConnection","sq"'

感谢您的帮助。

感谢Giovanni和Parfait的评论,我找到了解决方案。

cr_tb1 <- dbGetQuery(conn, statement = read_file('SQL//test.sql'))

相关内容

  • 没有找到相关文章

最新更新