# mysql編碼錯誤 ![image-20230604115322661](https://img2023.cnblogs.com/blog/2862884/202306/2862884-20230604115422584-1121547495.png) 問題出現在用django的admin組件向 ...
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