r语言 - 使用 dplyr::tbl 引用 PostgreSQL(振幅分析)表失败



我无法使用以下dplyr方法连接到PostgreSQL表(幅度分析(:

dplyr::tbl(amplitude_db, from = "app123.myEvent") %>% show_query()

输出:

RS-DBI driver: (could not Retrieve the result : ERROR:  relation "app123.myEvent" does not exist

但是,此方法有效:

dplyr::tbl(myCon,sql(("SELECT * FROM app123.myEvent"))) %>% show_query()

输出:

<SQL>
SELECT * FROM app123.myEvent
> 

知道为什么第一种方法失败了吗?

如果您使用包dbplyr中的in_schema,我认为您的第一种方法可以工作:

tbl(myCon, in_schema("app123", "myEvent")) %>% show_query()

如果您知道要从同一架构app123查询多个表,最好将搜索路径设置为此架构:

dbSendQuery(myCon, "set search_path to app123")

(这样就不需要每次都指定架构(

振幅支持将我指向这里,这是一个已知问题: https://github.com/rstats-db/RPostgres/issues/32

相关内容

最新更新