使用R将Excel导入到PostgreSQL

R读取Excel的方法有很多,这个我将另外一篇来详细介绍,经过一翻实验,最喜欢的还是readxl, 它同时支持XLS和XLSX格式。

对于这段代码,需要注意的地方是,如果excel是中文,不执行

Windows下,数据库保存的将是乱码,macOS下不存在这个问题,Linux下没有测试。

的含义是指定schema和表名,如果是public,可以只给表名就可以了。

library(readxl, quietly=TRUE)
df <- read_excel("d:/my.xlsx",col_names = TRUE)
library(RPostgreSQL)
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv, user='postgres', password='', dbname='alitrack', host='postgres.alitrack.com')
postgresqlpqExec(con, "SET client_encoding = 'GBK'")
dbWriteTable(con, c("my_schema","my_table"), data.frame(df), row.names = FALSE)
# Free up resources
dbDisconnect(con)
dbUnloadDriver(drv)
view raw xlsx2psql.r hosted with ❤ by GitHub

Leave a Reply

Your email address will not be published. Required fields are marked *