作者pingsky (PP)
看板Database
标题[系统] MySQL 5.1 和 MySQL 3.23 在big5上不相容..
时间Tue Dec 21 15:21:22 2010
以下是从编译为 big5 的 mysql 3.23.58 上抓取的资料
编译方法:
./configure --prefix=/usr/local/mysql --with-charset=big5
make
make install
从 MySQL 3.23 dump 出的资料 (test.txt):
INSERT INTO big5_test (test) VALUES ('许功盖');
INSERT INTO big5_test (test) VALUES ('产量尠 (公斤)');
MySQL 5.1.53 big5 环境:
mysql> show variables like "char%";
+--------------------------+-----------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------+
| character_set_client | big5 |
| character_set_connection | big5 |
| character_set_database | big5 |
| character_set_filesystem | binary |
| character_set_results | big5 |
| character_set_server | big5 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL5.1\share\charsets\ |
+--------------------------+-----------------------------+
8 rows in set (0.02 sec)
错误讯息:
C:\MySQL5.1\bin>mysql -u root test <./test.txt
ERROR 1366 (HY000) at line 2: Incorrect string value: '\xFB\xF3 (\xA4\xBD...'
for column 'test' at row 1
MySQL 5.1.53 latin1 环境
mysql> show variables like "char%";
+--------------------------+-----------------------------+
| Variable_name | Value |
+--------------------------+-----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL5.1\share\charsets\ |
+--------------------------+-----------------------------+
8 rows in set (0.00 sec)
C:\MySQL5.1\bin>mysql -u root test <./test.txt
ERROR 1064 (42000) at line 1: You have an error in your SQL syntax; check the
manual that corresponds to your MySQL server version for the right syntax to
use near '产量尠 (公斤)')' at line 1
这样会死在第一行许功盖的 "5C" \
而第二行的 \xFB\xF3 又是我们资料输入小组用excel 处理资料时会产生的
明明旧板 (3.23) 用的好好的, 我也无法为了新板 (5.1) 而要他们改作业模式
我们家的系统又有历史包伏+公司政策, 在主机硬体报废前不可能用 utf8
所以结论......... 无解........
为什麽 Oracle/Sun 会把新板 MySQL 的 big5 搞成这样呀......
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 211.21.104.32
※ 编辑: pingsky 来自: 211.21.104.32 (12/21 15:23)
1F:推 buganini:把.sql存成UTF-8 前面加set names "utf8" 然後倒回去? 12/25 01:05
2F:推 cspy:cp950这个编码有试过吗 12/26 00:25
3F:推 mondeos:Navicat有试过吗?可以互传不同版本的MySQL... 12/26 01:01