Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql UTF-8编码问题_Mysql_Ruby On Rails_Utf 8 - Fatal编程技术网

Mysql UTF-8编码问题

Mysql UTF-8编码问题,mysql,ruby-on-rails,utf-8,Mysql,Ruby On Rails,Utf 8,我正在将Rails应用程序从2升级到3。我有一个Mysql表,其中包含如下数据: ½†x 12†Rebar 14’ LVL 1-3/4" X 11-7/8" 运行轨道2时,这些名称看起来正常½“x 12”钢筋和 14’lvl1-3/4x11-7/8,但当我运行Rails3分支时,Ruby使用的是与数据库相同的形式 我猜Rails 2会忽略另一个的表编码。不知何故,我需要强制编码,而不是转换它。我通过使用.encode.force_编码修复了一个字符串的这个

我正在将Rails应用程序从2升级到3。我有一个Mysql表,其中包含如下数据:

½†x 12†Rebar          
14’ LVL 1-3/4" X 11-7/8"  
运行轨道2时,这些名称看起来正常½“x 12”钢筋和 14’lvl1-3/4x11-7/8,但当我运行Rails3分支时,Ruby使用的是与数据库相同的形式


我猜Rails 2会忽略另一个的表编码。不知何故,我需要强制编码,而不是转换它。我通过使用.encode.force_编码修复了一个字符串的这个问题,但我更愿意修复数据中的根本原因。

最后,我确定了所有出现故障的字符,并用Find Replaces替换它们,然后将数据重新导入utf-8表。我一时兴起,试图在实时环境中使用这些数据,而实时环境显示也以类似的方式中断,尽管修改后的数据在开发中看起来很棒

将旧数据与新数据区分开来,可以看出数据是多么混乱:

½â€<U+009D> x 12â€<U+009D> Rebar
我猜Rails 2使用的编码不是UTF-8

½\" x 12\" Rebar