MySQL 1366錯誤解決辦法

來源:互聯網
上載者:User

標籤:ima   nic   server   問題   res   from   ini檔案   incr   lam   

MySQL 1366錯誤大致描述如下

  1. SQL Error: 1366: Incorrect string value: "xE8xAFxA6xE7xBBx86…" for column "address" at row 1

解決辦法:檢查資料庫此欄位的字元集與整理字元集是否與SQL語句傳遞資料的字元集相同;不相同則會引發MySQL1366錯誤。

修改MySQL該欄位的字元集與整理規則即可。假設資料表為phplamp, SQL語句的字元集為utf8,出錯的欄位為address:

MySQL 1366 錯誤解決辦法
  1. #檢查資料表所有欄位的狀態
  2. ->show full columns from phplamp;
  3. #發現address欄位的Collation項非utf8,修改它!
  4. ->alter table phplamp change name name varchar(100) character set utf8 collate utf8_unicode_ci not null default ‘‘;

修改完欄位的字元集後可以再使用show full columns from table_name命令檢查一下,以確保萬無一失。假如您的SQL字元集為GBK或是GB2312或是其它的話,只需要將資料表欄位的字元集更改為其相應的編碼即可。

 

mysql[ERROR 1366 (HY000):錯誤]中文顯示問題

mysql的字元集用utf8也解決不了中文的編碼問題,用gbk才能解決。所以總結一下如果更改編碼:
停掉mysql服務,修改my.ini檔案,修改兩處default-character-set=gbk。啟動mysql服務。再次插入,還是有問題。

用status看了一下:

mysql> status;

原來

Current database:  order_movie_ticket

Server characterset:    utf8

Db     characterset:    utf8

Client characterset:    gbk

Conn.  characterset:    gbk

雖然Client characterset和Conn. characterset都改成了gbk, Db characterset的字元集還是utf8,所以仍出現中文亂碼。

所以要把它設回gbk,用alter命令。

mysql> alter database order_movie_ticket character set gbk;

因為只改了order_movie_ticket這一個db,所以直接用status查結果還是Db characterset的字元集為utf8,但是若轉入order_movie_ticket,只看他自己的

mysql> use order_movie_ticket;

再用status看一下,這回對了。再次插入資料,這回正確了。

要注意的是以上改的前提是database order_movie_ticket裡是空的,如果它的一些表裡已經有資料就不能只改db了,還要用alter命令改相應的table,

如:mysql> alter table movie character set gbk;

可以通過如下命令

mysql> show create table movie; 來看錶的create命令形式的結構和表的字元集。

----------------------------------------------------------

movie | create table ‘movie‘ (

‘movie_id‘ bigint(20) not null auto_increment,

‘name‘ varchar(50) not null,

‘actor‘ varchar(100) not null,

‘director‘ varchar(30) not null,

‘classification‘ varchar(30) default null,

‘story‘ varchar(200) default null,

‘valid‘ char(1) not null default ‘Y‘,

primary key (‘movie_id‘)

) ENGINE=InnoDB DEFAULT CHARSET=gbk

MySQL 1366錯誤解決辦法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.