深入剖析MySQL數據庫字符集的出錯現象

首先,我們來看一下錯誤示例:

Illegal mix of collations (gbk_chinese_ci,IMPLICIT)

and (gbk_bin,IMPLICIT) for operation '=',

SQL State: HY000, Error Code: 1267

原因:

數據庫的編碼與建表時的編碼不一樣;

處理方法:

如果安裝MySQL時設置的編碼爲jbk,那麽建表時可以用下面的方法處理:

CREATE TABLE `teachers` (

id` int(11) NOT NULL default '0',

name` varchar(20) default NULL,

password` varchar(20) default NULL,

department_id` int(11) default NULL,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=gbk;

也可以用下面的方法:

CREATE TABLE `teachers` (

id` int(11) NOT NULL default '0',

name` varchar(20) default NULL,

password` varchar(20) default NULL,

department_id` int(11) default NULL,

PRIMARY KEY (`id`)

) ;

 
深入剖析MySQL數據庫字符集的出錯現象
首先,我們來看一下錯誤示例: Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gbk_bin,IMPLICIT) for operation '=', SQL State: HY000, Error Code: 1267 原因: 數據庫的編碼與建表時的編碼不一樣; ...查看完整版>>深入剖析MySQL數據庫字符集的出錯現象
 
SQL數據恢複問題深入剖析
  一般性的數據庫恢複問題解疑問:  一,首先是數據庫服務器崩潰或文件被破壞導致數據庫不能使用,如果數據沒有備份,則在SQL SERVER安裝目錄的DATA文件夾下,默認的路徑("C:\Program Files\Microsoft SQL Serve...查看完整版>>SQL數據恢複問題深入剖析
 
SQL數據恢複問題深入剖析
一般性的數據庫恢複問題解疑問:一,首先是數據庫服務器崩潰或文件被破壞導致數據庫不能使用,如果數據沒有備份,則在SQL SERVER安裝目錄的DATA文件夾下,默認的路徑("C:\Program Files\Microsoft SQL Server\M...查看完整版>>SQL數據恢複問題深入剖析
 
講解MySQL數據庫字符集出錯的解決方法
MySQL字符集出錯的解決方法: 錯誤案例: Illegal mix of collations (gbk_chinese_ci,IMPLICIT) and (gbk_bin,IMPLICIT) for operation '=',SQL State: HY000, Error Code: 1267錯誤原因: 數據庫的編碼與建表時的編...查看完整版>>講解MySQL數據庫字符集出錯的解決方法
 
在不同字符集的數據庫之間導入數據的方法
以US7ASCII的庫中導出的數據導入到字符集爲ZHS16GBK的庫爲例子:   假設US7ASCII的庫是A機,字符集爲ZHS16GBK的庫爲B機  1.確定你A機上的Oracle用戶的.profile文件中的NLS_LANG是US7ASCII,正常的導出所有數據。...查看完整版>>在不同字符集的數據庫之間導入數據的方法