我正在使用Ruby 1.9.3,並且正在執行20個查詢之後,我遇到了'mysql'Ruby gem正在發生分段錯誤的奇怪問題。Ruby'mysql'寶石分割錯誤
這是執行的查詢代碼:
def load
dbh = Mysql::new($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME)
begin
res = dbh.query("SELECT word, type FROM words WHERE word = '#{dbh.escape_string(word)}';")
rescue Mysql::Error => e
puts "Error occurred during SQL query"
end
res.each do |row|
@word = row[0]
@type = row[1]
end
dbh.close if dbh
end
這段代碼獲得每次調用用戶輸入一個字,第20個字的查詢工作權並繼續在第21段錯誤不管是什麼我放在那裏。
我在Windows上使用Ruby 1.9.3p0和ruby'mysql'gem version 2.8.1,使用MySQL 5.5.16。我已經檢查過,我複製到Ruby bin文件夾中的libmysql.dll文件與我安裝的MySQL版本相同。
你有什麼可能會出錯的提示嗎?
你怎麼會這麼搜索以前問的問題嗎?本週早些時候,我可以發誓我已經看到了一場精確的比賽。 – 2012-03-25 22:01:37
@MikePurcell:我想你是指http://stackoverflow.com/questions/9667091/segmentation-fault-on-mysql2-ruby-1-9-3-rails-3-2但這個問題沒有答案但操作系統不同,所以我認爲即使情況可能不同。我也讀過其他的,但沒有有用的信息說明如何解決這個問題,因爲我已經嘗試失敗了。 – 2012-03-25 22:44:18
啊,好吧,請不要理會。 – 2012-03-25 22:48:47