我有一个关于使用 sqlSave 的问题。R如何将数据框中的RODBC数据映射到数据库表列?
如果我有一个包含 X 和 Y 列的表和一个包含 X 和 Y 列的数据框,RODBC 将 X 放入 X 并将 Y 放入 Y(我通过跟踪错误发现)。但是我可以明确地告诉 R 如何将 data.frame 列映射到数据库表列,例如将 A 放在 X 中,将 B 放在 Y 中。
我对 R 比较陌生,认为 RODBC 手册有点神秘。我也无法在互联网上找到示例。
我现在正在这样做(也许这也是你的意思):
colnames(dat) <- c("A", "B")
sqlSave(channel, dat, tablename = "tblTest", rownames=FALSE, append=TRUE)
这个对我有用。谢谢你的帮助。
当您开始探索 R 时,您应该会找到对您有很大帮助的精美 R 手册,它的帮助工具也非常好。
如果你从
help(sqlSave)
你会看到colNames
论点。提供向量c("A", "B")
会将您的第一个 data.frame 列放入表列 A 等中。
我在使用sqlSave
IBM DB2 数据库时遇到了很多问题。我试图通过使用sqlQuery
而不是创建具有正确格式的表来避免它,然后使用sqlSave
withappend=T
来强制我的 R 表进入数据库表。这解决了很多问题,例如日期格式和浮点数(而不是双精度数)。