我使用RMariaDB::dbConnect()在R中建立到我的MySQL数据库的连接。
它工作得很好,但是在长时间的for-loop中,每次迭代(使用dbSendStatement())时,都会将值插入数据库(使用dbSendStatement()),这种情况经常发生,因此我得到了错误:
错误:在查询2013年期间丢失与服务器的连接
有什么办法可以避免吗?
当我在每次迭代开始时只包含一个RMariaDB::dbConnect(),会有什么好处吗?
发布于 2022-10-20 18:12:48
我找到了一个基于%%-operator的答案。
基本上,我每第n次(这里:第15次)迭代就断开和重新连接:
for(i in 1:5000) {
if (i %% 15 == 0) {
print("Reconnecting to MySQL...")
dbDisconnect(stuffDB)
stuffDB <- dbConnect(MariaDB(), user = "x", password = "x", dbname = "x", host = "x")
}
}https://stackoverflow.com/questions/74130346
复制相似问题