2012-10-26 96 views
0

使用ruby的mysql gem我將一個新行插入到表中,這個表中有編碼utf8_spanish_ci。Ruby Mysql無法插入特殊字符

這裏就是我執行

require 'mysql' 
con = Mysql.new(#connecionparameters) 
rs = con.query("INSERT INTO `qubi_horoscopo`.`signos` (`name`) VALUES ('acción')") 

的代碼,當我查詢表我得到以下結果:

ID名稱

1acción

我檢查過我在數據庫中使用了相同的排序規則,tabl e和專欄。 所以我不知道發生了什麼問題。

有什麼想法嗎?謝謝!

+0

你的數據庫配置了什麼字符編碼?看起來像UTF-8字節被解釋爲ISO-8859編碼給我。 –

+0

數據庫配置爲utf8_spanish_ci –

+0

Ruby代碼使用什麼編碼? –

回答

0

我已經解決了這個執行

con.query("SET NAMES UTF8") 

我插入查詢之前。

我希望這可以幫助任何人有同樣的問題。我不知道這是否是最好的解決方案。