RMySQL:关闭没有句柄的连接
我正在尝试,并且意外地创建了一个没有句柄的连接RMySQL:关闭没有句柄的连接,mysql,r,rmysql,Mysql,R,Rmysql,我正在尝试,并且意外地创建了一个没有句柄的连接 dbConnect(MySQL(), user = "foo", password = "bar") connLocalDB = dbConnect(MySQL(), user = "foo", password = "bar") 请注意,第一次调用的返回没有分配给任何对象。现在,当我执行dbListConnections(MySQL())时,我看到两个连接: > dbListConnections(MySQL()) [[1]] <M
dbConnect(MySQL(), user = "foo", password = "bar")
connLocalDB = dbConnect(MySQL(), user = "foo", password = "bar")
请注意,第一次调用的返回没有分配给任何对象。现在,当我执行dbListConnections(MySQL())
时,我看到两个连接:
> dbListConnections(MySQL())
[[1]]
<MySQLConnection:0,0>
[[2]]
<MySQLConnection:0,1>
但是,然后,我得到了这个:
> dbListConnections(MySQL())
[[1]]
Error in .local(dbObj, ...) :
internal error in RS_DBI_getConnection: corrupt connection handle
如何安全地终止未分配句柄的连接?通常,对于创建连接、获取查询数据并关闭连接,我使用以下功能:
getDataSql <- function( query ) {
con = dbConnect(RMySQL::MySQL(), dbname = "dbname", host = "host", user = "username", password = "pasword", port = "port")
result <- dbGetQuery(con, query)
dbDisconnect(con)
result
}
getDataSql在下一个版本(即github上的版本)中,您不必担心这个问题@hadley最奇怪的事情。刚刚更新,现在它给我提供了dbListConnections(MySQL())#在(函数(类,fdef,mtable)中列出打开的连接错误:找不到签名为“MySQLDriver”的函数“dbListConnections”的继承方法“ @哈德利”出现了各种其他错误,包括无法使用home目录中的配置文件执行无密码登录。@哈德利接着查看是否可以用该软件的DEV版本来帮助诊断这些错误。@哈德利,我将乐于支持RMySQL和DBI问题页。请注意,我考虑API更改。没有先前的弃用警告的。
getDataSql <- function( query ) {
con = dbConnect(RMySQL::MySQL(), dbname = "dbname", host = "host", user = "username", password = "pasword", port = "port")
result <- dbGetQuery(con, query)
dbDisconnect(con)
result
}