Re: [系統] MySQL 5.1 / MySQL 3.23 在big5上不相容
※ 引述《JoeHorn (每天都在公司玩OLG)》之銘言:
: ※ 引述《pingsky (PP)》之銘言:
: : 從 MySQL 3.23 dump 出的資料 (test.txt):
: : INSERT INTO big5_test (test) VALUES ('許功蓋');
: : INSERT INTO big5_test (test) VALUES ('產量尠 (公斤)');
: 可能脫離 4.1 以前的版本太久了,我很難相信「許功蓋」 dump 出來是這樣。
也許你很難相信, 不過這是事實,
在編譯階段就以 big5 做的 mysql 3.23.58 以 mysqldump 出來的就是如此, 沒有多餘\
: 用這種方式試試看:
: 1. SELECT * FROM `表格名稱` INTO OUTFILE '目錄/檔案';
: 2. 把檔案搬到 MySQL 5.1 的機器上
: 3. LOAD DATA INFILE '目錄/檔案' INTO TABLE `新的表格名稱`;
對不起, 這個方法無法解決問題..
: : 為什麼 Oracle/Sun 會把新板 MySQL 的 big5 搞成這樣呀......
: MySQL 的完整多語系支援從 4.1 就開始了。
: 而 4.1 的正式版推出是 2003 年的事... 那時 MySQL 還是獨立的。
: 雖然我也作過轉換的這種苦差事,但我不覺得很難用...
轉換這種事情真的是苦差事,
我也沒覺得難用 (還沒上線使用), 但深深覺得 5.1 怎會搞成這樣
附帶一提, 我測過 4.1.22 , 4.1.22 在這方面是 OK 的
但現在 O 公司把 5.0 之前的版本都無情的拋棄了..
: 雖然年代久遠,但我相信搜尋引擎還是找的到正解。
: 衷心的建議您多作些功課。
若您有看到我之前的文, 應該大概可以推測我做了多久
而之間做了多少功課, 搜索引擊查了多久, 就不足為外人道了
不過, 讓我想起多年前為了一個客戶需求要在某部份客製化 mysql
Internet 查了一個禮拜無解,
後來想說 [好吧, 不要偷懶了], 然後去閱讀及修改 mysql sourcecode
最後改好make好測試好, 也不過花了一個上午, 下午交差時忍不住想我上禮拜在幹嘛..
雖然說14年的資訊業生涯的確讓我個性越來越懶惰, 技術越來越拙劣
但是在花了不少時間心力後, 還被人建議要多作些功課, 心情.........非常複雜.....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.217.241
→
12/23 19:28, , 1F
12/23 19:28, 1F
→
12/23 19:36, , 2F
12/23 19:36, 2F
推
12/23 20:06, , 3F
12/23 20:06, 3F
→
12/23 20:59, , 4F
12/23 20:59, 4F
→
12/23 21:11, , 5F
12/23 21:11, 5F
推
12/23 23:20, , 6F
12/23 23:20, 6F
資料庫、資料表的字元集最標準的做法, big5 <--> big5 , 4.1.22 成功, 5.1 無效
當然, 使用其他不同的字元集如 latin1 , bin 等我也試過, 結果不行
如果你有看我之前的文, 你會發現我都會再以下列指令確認
mysql> show variables like "char%";
至於 INSERT 之前作 SET NAMES
如果你有看到我都有做 mysql> show variables like "char%";
並且知道 set names 是在做什麼的, 應該不會問我這個問題
當然基於實事求是的精神, 我仍然是有試過, 結果仍是無效
事實上我己經打算把問題簡化為一行:
INSERT INTO big5_test (test) VALUES ('許功蓋尠 測試');
或是
INSERT INTO big5_test (test) VALUES ('農產品尠 稻穀');
('穀' 字也有 5C )
然後發 bugreport 給 mysql 了..
(不過仍在和我的懶惰抗戰, 因為覺得就算寫了 O 社也不見得會理我..現在是utf8的時代)
※ 編輯: pingsky 來自: 211.21.104.32 (12/24 09:58)
討論串 (同標題文章)