【发布时间】:2014-01-16 16:15:42
【问题描述】:
我想打开一个到 mysql 数据库的连接并使用不同的查询检索数据。每次获取数据时都需要关闭连接还是有更好的方法来多次查询并仅在最后关闭连接?
目前我这样做:
db = dbConnect(MySQL(), user='root', password='1234', dbname='my_db', host='localhost')
query1=dbSendQuery(db, "select * from table1")
data1 = fetch(query1, n=10000)
query2=dbSendQuery(db, "select * from table2") ##ERROR !
我收到错误消息:
mysqlExecStatement(conn, statement, ...) 中的错误: RS-DBI 驱动程序:(与挂起的行连接,在继续之前关闭 resultSet)
现在,如果我使用 dbClearResult(query1) 清除结果,我需要重做连接 (dbConnect...)
有没有更好/有效的方法来首先获取所有内容而不是每次都打开/关闭?
【问题讨论】:
-
您需要在执行另一个查询之前清除结果集。阅读 ?dbSendQuery,特别是详细信息部分。 dbGetQuery 更适合您正在尝试做的事情,请看@Stuples answer
标签: mysql r database-connection