src_postgres和dbConnect函数之间的区别用于将R与postgres连接

时间:2015-06-09 20:53:16

标签: r postgresql rpostgresql

out parameterAppendSource功能有什么区别?两者都可以用于使用RPosgresql包将R连接到postgres。在我的实验中,我只能使用src_postgres 读取 dbConnect 来写入数据库。

当我尝试不同的组合时,我只收到错误。

这对我来说似乎很奇怪。

1 个答案:

答案 0 :(得分:3)

src_postgres是一个用于从 dplyr 包创建与PostgreSQL数据库的连接的函数。 RPostgreSQL 包实现了 DBI 包中通用dbConnect的方法。 src_postgres RPostgreSQL 调用dbConnect(我猜)。

dbConnect返回的通用连接对象是一个开放式接口,用于将SQL查询发送到数据库。这意味着您可以根据自己的喜好提供selectupdateinsertdelete等查询。

src_postgres是处理Hadley在 dplyr 中构建的数据库中的数据的更高级别界面的一部分。 src_*函数连接到db,然后tbl函数指定一个更具体的数据源(表,视图,任意选择查询)来从中提取数据。 dplyr 中有一些基本的表操作函数,但我不认为它是用于在db中执行updateinsert类型事务的工具。这不是那个工具的用途。请注意, dplyr 中实施的“动词”都专注于提取数据并汇总(selectfiltermutate等。)

如果您需要在行级别的数据库中更改数据,则需要将SQL查询发送到由dbConnect创建的连接。如果您所做的只是从数据库中提取数据并在R中进行分析,那就是 dplyr 的用途。