使用RMySQL,我希望将数据从数据库加载到R中的数据帧中。为此,我使用以下代码:
连接数据库:
con <- dbConnect(MySQL(),
user="root", password="password",
dbname="prediction", host="localhost")
主代码
library(RMySQL)
source("Rconnectdb") #load the database connection
query = "select received,isRefound from message" #specify query
rs=dbGetQuery(con,query) #resultset
dataset <- fetch(rs, n=-1) #fill dataset with all rows of the resultset
dbClearResult(rs) #clear resultset
执行此操作时,会出现以下错误
函数(类、fdef、mtable)出错:找不到
函数“fetch”的继承方法,签名“data.frame”,
“数字”
有什么想法吗?
最佳答案
你把dbSendQuery
和dbGetQuery
弄错了。dbGetQuery
根据文档合并dbSendQuery
、fetch
和dbClearResult
:
函数dbSendQuery
只向数据库引擎提交并同步执行SQL语句。它不提取任何记录-因此您需要使用函数fetch
(确保在获取完所需记录后调用dbClearResult
)。
函数dbGetQuery
在一个操作中完成所有这些操作(提交语句、获取所有输出记录并清除结果集)。
从包中的?dbGetQuery
开始。
关于mysql - RMySQL获取-找不到继承的方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14726114/