0

我在表 A 中有此列“时间戳”,我想选择除上周之外的所有数据,这是我的 R 代码,但弹出错误提示“函数错误(类、fdef、mtable):无法找到函数“dbWriteTable”的继承方法,用于签名“MySQLConnection”、“data.frame”、“character””,任何帮助将不胜感激?谢谢你。

fun <- function(con, dat.set, tbl.name) {

if (dbExistsTable(con, tbl.name)) {     
BFWeek = dbGetQuery(con, statement=paste("SELECT * FROM A",
"WHERE timestamp < timestampadd(day, -7, now())"))   
dbWriteTable(con, BFWeek, tbl.name, row.names=F, append=T);            

} else { 
dbWriteTable(con, tbl.name, dat.set, row.names=F, append=T); 
  }
} 

fun(conn_table, df, "A")
4

1 回答 1

0

表的名称必须位于要写入该表的数据框之前。else您的代码部分中,您似乎有正确的顺序,但在ifBFWeek之前的部分tbl.name中,它应该在它之后的位置。

> showMethods("dbWriteTable")
Function: dbWriteTable (package DBI)
conn="MySQLConnection", name="character", value="character"
conn="MySQLConnection", name="character", value="data.frame"

这会让您了解哪些方法可用,哪些方法不可用。

于 2012-11-01T00:26:58.713 回答