2

我无法使用这种 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
> 

任何想法为什么第一种方法失败了?

4

2 回答 2

1

我认为如果您使用in_schemafrom package ,您的第一种方法可以工作dbplyr

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

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

dbSendQuery(myCon, "set search_path to app123")

(这样你就不需要每次都指定模式)

于 2017-08-14T14:40:06.457 回答
0

幅度支持在这里指出了我,这是一个已知问题: https ://github.com/rstats-db/RPostgres/issues/32

于 2017-08-10T17:41:13.527 回答