django inspectdb utf8mb4 错误
django inspectdb utf8mb4 error
Python manage.py inspectdb 给出以下错误,即使在所有 table 都是
有 CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
从 django.db 导入模型
无法检查 table 'execution'
错误是:(3719, "3719: 'utf8' 当前是字符集 UTF8MB3 的别名,但在未来的版本中将成为 UTF8MB4 的别名。请考虑使用 UTF8MB4 以便明确无误。", None)
我最近遇到了完全相同的问题。
我向 Django 提出了一个错误请求,但 Django 不接受它作为他们的错误。
MySQL 8 已从 UTF8MB3 切换为 UTF8MB4 作为默认字符集。从 8.0.11 开始,如果您访问使用以前版本创建的 table,则会返回一条警告,鼓励您切换到 UTF8MB4。
当您 运行 inspectdb INFORMATION_SCHEMA table 仍然是 UTF8MB3 时,您会收到返回给 Django 的警告,Django 目前无法忽略该警告。
我在 Django bug ticket 上有一个完整的示例来说明如何解决这个错误:
https://code.djangoproject.com/ticket/29678
我已经能够完全使用 MySQL 8.0.12 作为强大的 Django 应用程序的后端
所以一旦你解决了这个问题,你应该会没事的。
Python manage.py inspectdb 给出以下错误,即使在所有 table 都是 有 CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci
从 django.db 导入模型
无法检查 table 'execution'
错误是:(3719, "3719: 'utf8' 当前是字符集 UTF8MB3 的别名,但在未来的版本中将成为 UTF8MB4 的别名。请考虑使用 UTF8MB4 以便明确无误。", None)
我最近遇到了完全相同的问题。 我向 Django 提出了一个错误请求,但 Django 不接受它作为他们的错误。
MySQL 8 已从 UTF8MB3 切换为 UTF8MB4 作为默认字符集。从 8.0.11 开始,如果您访问使用以前版本创建的 table,则会返回一条警告,鼓励您切换到 UTF8MB4。
当您 运行 inspectdb INFORMATION_SCHEMA table 仍然是 UTF8MB3 时,您会收到返回给 Django 的警告,Django 目前无法忽略该警告。
我在 Django bug ticket 上有一个完整的示例来说明如何解决这个错误: https://code.djangoproject.com/ticket/29678
我已经能够完全使用 MySQL 8.0.12 作为强大的 Django 应用程序的后端 所以一旦你解决了这个问题,你应该会没事的。