多年經驗好評不斷!實惠價格,專業檢測
處理頂樓防水、牆壁滲水、壁癌剝落問題!
窗簾壁紙居家空間、社區大樓、商務辦公室清潔
包辦各式服務,可依客戶需求彈性規劃!

首頁  •  tw 論壇 • 程式設計討論     • 

mysql big5 轉 utf-8 速記

房東:阿龍
發表時間:2007-03-18
[檢舉]


當網站改版時,要把以往mysql的big5資料轉換成utf-8時,常常會是個頭痛的問題。

要轉換,你的新舊資料庫都有phpmyadmin的介面,另外還得有big5->utf-8的工具,在windows上中文轉換工具首選為ConvertZ,在linux上得轉碼工具為iconv。

[全文:]

首先,檢查看看phpmyadmin在輸出csv檔案時會不會有問題。
stripslash為把字串去掉反斜線的函式,但是在處理big5碼的時候便會碰到難題,他會將big5的斜線去掉,以至於轉出來的文字變成亂碼。新版的phpmyadmin已經沒有這個問題,但是要看看舊版有沒有在轉出的時候加上這個函式,得把他去掉
編輯 phpmyadmin/libraries/export/csv.php
在function PMA_exportData裡頭,找到while迴圈,並找找看有沒有stripslash的function:

while ($row = PMA_DBI_fetch_row($result))
.....
$row[$j] = stripslashes($row[$j]);
把function拿掉,留下$row[$j];就好。

第二,輸出csv資料。到phpmyadmin的輸出頁面,針對舊資料庫一次一個表格輸出。調成csv匯出,存檔。

第三,匯出資料庫的結構schema。到phpmyadmin的輸出介面,針對全部的表格,調成SQL輸出,並且不要包含資料,下載回來的是單純的sql結構檔。

第四,打開convertz,對剛剛轉下來的csv轉換成utf8的動作。

第五,到新資料庫,先把剛剛.sql的結構給匯入,建立好空的table格式。如果在mysql4.1以後,如果有預設連線校對,匯入的表格統統都會用該連線校對設定。

第六,一個一個資料表,匯入剛剛存下的csv檔。

最後,檢查看看新資料庫有沒有亂碼。





  • 贊助網站       

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!



  •  共 0 人回應

    姓名:
    佈告內容: