我有一个数据框,我想上传到云环境。我已经连接到数据库,现在想“写下”记录。
我有一个如下所示的数据框:
xAxis: {
tickFormat: function(d) {
moment(d, 'YYYYMMDD').format('YYYY-MM-DD');
}
}
并尝试将其添加到服务器上的“team”表中,如下所示:
#df
a b
1 3 11
2 4 12
然而,这给了我以下错误:
#connect to database (conection is called "con")
for (i in nrow(df)){
var1 <- df$a[i]
var2 <- df$b[i]
players_home <- dbGetQuery(con, "INSERT INTO team VALUES (var1, var2)")
}
关于如何让这个工作的任何想法?
答案 0 :(得分:0)
您需要为插入语句指定列
INSERT INTO table_name (column1, column2, column3,...)
VALUES (value1,value2, value3,...)
您还应该使用paste
,否则r
会假定您传递一个字符串作为参数。 See this question
在您的情况下,假设您的值与列号匹配,则为
query <- paste("INSERT INTO team VALUES(",var1, ",", var2, ")")
players_home <- dbGetQuery(con, query)