4
我運行以下代碼塊8次,但在三個不同的R腳本中使用不同的查詢。我已經建立了與服務器的連接。在RMySQL上執行多個查詢時出現連接錯誤
rs<-dbSendQuery(con,"select owner_name, owner_domain, count(*) as avg from kapsule,
recview_history where recview_history.vsrc='em' and
recview_history.g_conf_id=kapsule.g_conf_id group by owner_name;")
d<-fetch(rs, n=0)
d$test<-apply(d,1,function(row) 1)
dp<-ddply(d, .(test), transform, percentile=ecdf(avg)(avg))
write.csv(dp, file="/tmp/creator_data/embeds.csv")
rm(rs)
rm(d)
rm(dp)
餘米的一個非常大的數據集和前兩個CSV的在每個腳本創建之後,因此運行此,該腳本提供了以下錯誤。
Error in mysqlExecStatement(conn, statement, ...) :
RS-DBI driver: (connection with pending rows, close resultSet before continuing)
,當我跑了三個腳本早些時候在一個較小的數據集,他們工作得很好。問題是由於MySQL服務器中數據的大小所致?任何有關這方面的幫助將適當讚賞。先謝謝你。
你從來沒有接近'rs'用'dbClearResult' – hadley
我糾正我的錯誤。 dbGetQuery的工作比dbSendQuery好得多 –
這仍然是一個持續的問題?從我處理大數據的經驗。您必須將超時設置爲0.或者無限。連接自動關閉的超時時間。希望這可以幫助 –