如何将数据框插入到SQL Server表中?

前端之家收集整理的这篇文章主要介绍了如何将数据框插入到SQL Server表中?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试将数据帧上传sql Server表,我尝试将其分解为一个简单的SQL查询字符串.
library(RODBC)
con <- odbcDriverConnect("driver=sql Server; server=database")

df <- data.frame(a=1:10,b=10:1,c=11:20)

values <- paste("(",df$a,",df$b,df$c,")",sep="",collapse=",")

cmd <- paste("insert into MyTable values ",values)

result <- sqlQuery(con,cmd,as.is=TRUE)

这似乎工作,但不能很好地缩放.有更简单的方法吗?

解决方法

可能粘贴名称(df)可以解决缩放问题:
values <- paste( " df[,c(",paste( names(df),"),")] ",collapse="" ) 
      values
      #[1] " df[,c( a,b,c )] "

你说你的代码是“工作的”..我也会以为有人会使用sqlSave而不是sqlQuery如果有人想“上传”.

我会猜到这将更有可能做你所描述的:

sqlSave(con,df,tablename = "MyTable")

猜你在找的MsSQL相关文章