当在使用 flask-sqlalchemy 操做 mysql 数据库时中文乱码或者直接报错。
解决方法以下:mysql
from flask_sqlalchemy import SQLAlchemy db = SQLALchemy(use_native_unicode='utf8')
配置 mysql 默认字符编码为 utf8sql
[mysqld] character_set_server = utf8 [client] default-character-set = utf8 [mysql] default-character-set = utf8
重启MySQL的服务,建立 数据库并设置默认字符集 (我发现这步才是关键点,第一步 flask 字符集设置与不设置都没有关系)。数据库
create database DATABASE_NAME default character set utf8;
若是你数据库已存在内容请将数据库,表默认字符集改成 utf8flask