mysql編碼錯誤

問題出現在用django的admin組件向資料庫添加資料時發生的編碼錯誤(1366, "Incorrect string value: '\\xE5\\x8D\\x83\\xE7\\x89\\x9B...' for column 'title' at row 1")
以為django可以進行資料庫的遷移,但是你還是要去手動在mysql中創建一個資料庫名,所以在創建的時候沒有設定編碼格式的話,默認編碼格式是latin1
mysql> show create database blog_system;
+-------------+------------------------------------------------------------------------+
| Database | Create Database |
+-------------+------------------------------------------------------------------------+
| blog_system | CREATE DATABASE `blog_system` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+-------------+------------------------------------------------------------------------+
1 row in set (0.01 sec)
所以解決辦法當然是把這個改成utf-8方式就對了,運行命令是: alter database blog_system default character set utf8 collate utf8_general_ci;
但是!其實你現在改完,還要刪掉每一個table然后再進行重新的遷移,那不如直接刪庫跑路~,直接重新開一個庫,然后再遷移就省事一點,程序如下:
1. 新建資料庫
新建一個資料庫,然后遷移之前修改好編碼方式

2. 遷移資料庫

3. 用django的admin組件重新添加資訊

這下就可以了%
本文來自博客園,作者:ivanlee717,轉載請注明原文鏈接:https://www.cnblogs.com/ivanlee717/p/17455468.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/554298.html
標籤:MySQL
上一篇:鎖
下一篇:返回列表
