我想将完整的数据框导出到已在数据库(postgresql)中创建并包含相似数据的表中。
我发现一些有关dbwrite表(.... overwrite = TRUE)的问题,我不想覆盖表中已经存在的数据。我只想从R控制台使用数据框更新我的表。
有人可以让我知道我该怎么做..
像这样的东西
dbInsertTable(con, df, tablename = "MyTable")
你需要 dbWriteTable
假设您没有在数据框中使用行名
dbWriteTable(con, "MyTable", df, row.names=FALSE, append=TRUE)
如果您希望df中的行名成为数据库表中的一列,则可以将该选项设置为TRUE
。如果您的表位于公共模式以外的其他模式中,那么您将c('myschema', 'MyTable')
代替直观的“ myschema.MyTable”。另外,数据框的列必须与数据库表中的列的顺序相同。它根据订单而不是名称进行匹配。
顺便说一句,您可能不应该在postgres表或列名中使用大写字母,因为那样的话就需要用引号引起来。如果您真的使用大写字母,那么您将需要dbWriteTable(con, '"MyTable"', df, row.names=FALSE, append=TRUE)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句