我需要检查res
中的dbSendQuery()
是否结束。
我的代码是这样的:
db <- dbConnect(drv=SQLite(),flags=SQLITE_RW,dbname="db.sqlite",synchronous = "off")
dbBegin(db)
res <- dbSendQuery(db,"Update Operation SET Name = 'teste' where Id = 1")
if("my SendQuery is over"){
dbClearResult(res)
dbCommit(db)
dbDisconnect(db)
}
我需要知道什么时候结束才能发送此内容以提交然后断开连接。
更新1 在我的系统中,对于上述示例,可以同时发生1个以上的用户。 然后,当db中的第一个连接结束时,我需要完成他的请求,并向另一个连接提供编写查询的可能性。
答案 0 :(得分:2)
dbSendQuery()
始终等待完成。您可以通过致电dbGetRowsAffected(res)
进行仔细检查。
对于出于副作用而运行且不返回值的SQL语句,首选dbSendStatement()
。
synchronous = "off"
的{{1}}参数是一个错误的名词,它定义了何时以及如何将数据写入磁盘。这里不涉及多线程。