这是我第一次尝试在本地MySQL数据库和R之间来回抛出数据,也就是说,我在数据库中创建了一个表,并希望将数据插入其中。目前,它是一个空表(使用MySQL查询浏览器创建),并且有一个PK集。
我使用的是RODBC包(RMySQL会给我错误),我更喜欢使用这个库。
如何将数据帧中的数据插入此表?是否有快速解决方案,或者我需要:
从我的数据帧创建新的临时表
插入数据
放下临时工作台
有单独的命令吗?非常感谢您的帮助!
最佳答案
请参见包文档中的help(sqlSave)
;示例显示
channel <- odbcConnect("test")
sqlSave(channel, USArrests, rownames = "state", addPK=TRUE)
sqlFetch(channel, "USArrests", rownames = "state") # get the lot
foo <- cbind(state=row.names(USArrests), USArrests)[1:3, c(1,3)]
foo[1,2] <- 222
sqlUpdate(channel, foo, "USArrests")
sqlFetch(channel, "USArrests", rownames = "state", max = 5)
sqlDrop(channel, "USArrests")
close(channel)
希望这足够让你走了。
关于mysql - RODBC插入查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3910585/