我已经开始使用这些软件包了
require(RPostgreSQL)
require(sqldf)
require(caroline)
为了在PostgreSQL和R之间处理数据。
我在数据库中创建了一个模式public,其中包含一些表(一个名为" data")和属性。我导入了表格"数据"回到R作为数据框"测试"。 稍微操作一下后,我试图将它上传回PostgreSQL DB到(空)表"数据"。但是,我总是得到一个错误,我无法找到解决方案:
dbWriteTable2(con, "data", test, fill.null = T, add.id=T,
row.names=FALSE, pg.update.seq=FALSE)
[1] "loading draft table to database"
[1] FALSE
Warning message:
In postgresqlWriteTable(conn, name, value, ...) :
table data exists in database: aborting assignTable
我知道表"数据"存在。因此我使用dbWriteTable2函数,它似乎能够将数据框插入表中的相应属性" data"。
从PostgreSQL DB中删除表数据并重新运行时,我得到:
dbWriteTable2(con, "data", test, fill.null = T, add.id=T,
row.names=FALSE, pg.update.seq=FALSE)
Error in `[.data.frame`(dbGetQuery(conn, paste("select a.attname from pg_attribute a, pg_class c, pg_tables t, pg_namespace nsp", :
选择了未定义的列
总而言之,如何将数据框上传到PostgreSQL数据库中的(空)现有表中。