我使用
编写了一个data.framedbWriteTable(con, name='db_all', df, overwrite=T, row.names=F)
使用RMySQL成功使用MySQL。 现在我有第二个数据框,它具有类似的结构并尝试使用
dbWriteTable(con,name='db_all',df1,append=T,row.names=F,overwrite=F)
给了我
.local(conn,statement,...)出错: 无法运行语句:'字段列表'中的未知列'zzz'>
在我的SQL表中我还没有那个列名,并且我希望我的append = T会在我的SQL表中添加这个列,显然它没有。
答案 0 :(得分:1)
追加会将数据追加到表中,不会在alter table中添加列。
如果名称与使用命名列表的数据框中的名称不同,则需要指定列:例如:field.types = list(dte =“date”,val =“double(20,10)”)< / p>
答案 1 :(得分:1)
未知列的名称是什么?如果是“ row_names”,则需要在row.names = FALSE
中设置参数dbWriteTable()
。否则,它将尝试在插入语句的数据框中包含行名。