采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
不应该用utf8mb4吗?utf8不是好多字显示不出来吗?
这样:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'backend', 'USER': 'root', 'PASSWORD': '123456', 'HOST': '127.0.0.1', 'PORT': '3306', 'CHARSET': 'utf8mb4' } }
报什么错呢?数据库的编码配置可分两个级别:全局配置级别和数据库级别。
全局配置级别可以通过mysql.conf配置文件进行配置,这里就不展开了。
数据库级别可在创建数据库时指定字符集,如:
CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8mb4;
或使用图形界面时,在图形界面指定字符集也可。
另外需要注意创建数据库连接时的字符集需要与数据库配置的字符集一致,比如在Django侧配置文件settings.py的数据库配置要和实际连接的数据库字符集一致,否则有可能引起问题。
setting里面怎么配数据库字符集格式呀?没找到呀
通过CHARSET字段
嗯,为这个同学认真的态度点赞。虽然在MySQL数据库使用utf-8字符集能够表示大部分的文字,能够满足大部分的场景,但是使用utf8mb4字符集才是使用MySQL数据库最妥当的方法。这里是老师疏忽了,非常感谢同学的指出。
另外需要注意的是utf8mb4字符集是MySQL特有的字符集,是因为历史遗留原因而发明的,在MySQL里面utf8mb4是utf8的超集。但在编程语言或其他数据库中,这个概念并不通用。
怎么才能使用utf8mb4呢?想用但是一直报错。
登录后可查看更多问答,登录/注册
0到1完整项目实战过程,是难得的Django+小程序全栈项目体验。
1.4k 7
1.2k 23
2.2k 21
1.2k 14
1.2k 12