【发布时间】:2023-03-07 05:52:01
【问题描述】:
我想将我的 Django 站点设置为以万无一失的方式为 MySQL 使用 UTF-8,无论 MySQL 安装是否使用 UTF-8 作为其默认设置。除了使用 UTF-8 编码创建表之外,我还在 settings.py 中的数据库初始化中添加了以下内容,以确保连接也使用 utf-8:
'OPTIONS': { 'init_command': 'SET storage_engine=INNODB; SET names "utf8"' }
这会导致错误:
_mysql_exceptions.ProgrammingError: (2014, "Commands out of sync; you can't run this command now")
这样做的正确方法是什么?还有其他地方需要执行 SET NAMES 吗?
【问题讨论】: