如何正确使用dbWriteTable(2)?

时间:2015-05-16 13:13:01

标签: r

我已经开始使用这些软件包了

            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数据库中的(空)现有表中。

0 个答案:

没有答案