我正在尝试使用以下命令将新数据附加到已存在的 MySQL 表中dbWriteTable
方法。我过去使用它没有问题,但现在失败了,因为表已经存在。这是尽管使用overwrite=FALSE, append=TRUE,
代码:
full_sum_table <- 'mydb.summary'
dbWriteTable(conn=open_connection, name=full_sum_table, value=summary_data_final, overwrite=FALSE, append=TRUE, row.names=0)
Error in mysqlExecStatement(conn, statement, ...) :
RS-DBI driver: (could not run statement: Table 'summary' already exists)
[1] FALSE
Warning message:
In mysqlWriteTable(conn, name, value, ...) :
could not create table: aborting mysqlWriteTable
该代码的第一次调用工作正常,但后续调用失败。
任何想法将不胜感激。谢谢
环境:
R version 3.0.2
Packages: DBI (I was using RMySQL but it is not available for 3.0.2)
MySQL v5.6.14
OS: Windows Server 7
该解决方案由作者在问题中列出,并已移至此处。
看来该错误/功能仅在使用完整表路径时才会发生,例如myDB.temp_table
相比于简单地temp_table
> dbWriteTable(conn=open_connection, name='myDB.temp_table', value=summary_data_final, overwrite=FALSE, append=TRUE, row.names=0)
Error in mysqlExecStatement(conn, statement, ...) :
RS-DBI driver: (could not run statement: Table 'temp_table' already exists)
[1] FALSE
Warning message:
In mysqlWriteTable(conn, name, value, ...) :
could not create table: aborting mysqlWriteTable
> dbWriteTable(conn=open_connection, name='temp_table', value=summary_data_final, overwrite=FALSE, append=TRUE, row.names=0)
[1] TRUE
我没有在任何地方找到这个记录,并且很惊讶我以前没有遇到过它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)