因為工作需要,要把mssql資料庫轉為mysql,有乙個新聞表關鍵的量個字段為 title,content,title的字段型別為 varchar content的字段型別為ntext,我使用migration toolkit轉換後,結果顯示為null,沒有乙個字元,有乙個表,因為全部是英語,所以資料正常顯示,後來我在administator攻擊把預設的字元編碼改為utf8,這個時候顯示title為亂碼,content列為正常。如是在修改mysql很多引數,比如用gbk,gb2312b皆無濟於事。搞的我焦頭爛額。當我插入漢字時,這個時候顯示又是正確,這說明轉換後的這個表還是支援中文的。我想應該是轉換的時候,肯定是弄錯了,因為content在mssql的型別是ntext是unicode編碼。而varchar則不是,於是我在migration tool 連線mssql的時候 在高階選選 connection string 填上:
jdbc:jtds:sqlserver://localhost:1433/cjwz_zj;user=sa;password=sa;charset=gb2312;domain=
關鍵就是這個紅色的部分,如果不寫的話,我估計預設的是charset=uft8了,這樣varchar當然不能直接轉過去了,所以要加這個。
改天總結下資料庫編碼的問題。
linux下mysql中文亂碼 中文問號 解決辦法
安裝完的mysql的預設字符集為 latin1 為了要將其字符集改為使用者所需要的 比如utf8 就必須改其相關的配置檔案 由於linux下mysql的預設安裝目錄分布在不同的檔案下 不像windows一樣放在同一目錄下,只需修改其中的my.ini檔案,重起後就生效了 所以先來看看linux下mys...
PHP取mysql資料庫顯示亂碼 解
linux系統下面 php頁面 或者class類裡面也ok.conn mysql connect ip位址,使用者名稱,密碼 or die 鏈結資料庫失敗 mysql error 編碼client為utf8 mysql query set character set client utf8 conn...
php讀取mysql中文資料出現亂碼的解決方法
1.php頁面語言本身的編碼型別不合適,這時候,你直接在指令碼中寫的中文肯定是亂碼,不用說資料庫了 解決方法 選擇 utf8 或者 gb2312 這樣客戶瀏覽器會自動選擇並出現正確的中文顯示。注意 utf8 或者 gb2312 都程式設計客棧可以正確顯示中文的。2.資料庫mysql中的編碼型別不正確...