通过 RPostgreSQL 将转储文件导入 PostgreSQL

问题描述

我想知道是否有办法通过 R (RPostgreSQL) 将 PostgreSQL 转储导入 PostgreSQL 数据库。

我知道这是我们通过 RPostgreSQL 将 R 中的 csv 或数据表写入 PostgreSQL 的方式。

dbWriteTable(con,'mtcars',mtcars)

这是我们可以在终端中将转储导入 PostgreSQL 数据库的方式。

\i /Users/Downloads/mypostgres.dump

有没有办法通过R包将转储导入PostgreSQL,这样我就不用离开R界面?

解决方法

您可以使用 system 并调用 psql

system('psql my_new_db  < /Users/Downloads/mypostgres.dump')
,

你可以试试:

library("RPostgreSQL")

drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv,dbname = "postgres",host = "localhost",port = 5432,user = "openpg",password = "password")

dbWriteTable(con,"cartable",value = mtcars,append = TRUE,row.names = FALSE)

#Test if it is there
head(dbGetQuery(con,"SELECT * from cartable"))
#   mpg cyl disp  hp drat    wt  qsec vs am gear carb
#1 21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
#2 21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
#3 22.8   4  108  93 3.85 2.320 18.61  1  1    4    1
#4 21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
#5 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2
#6 18.1   6  225 105 2.76 3.460 20.22  1  0    3    1

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...