Django 迁移错误 _mysql_exceptions.ProgrammingError: (1064, "您的 SQL 语法有错误

2023-12-04

TL;DR:python版本冲突,我认为我下载并编译的python(3.6)无法使用这个包(libmysqlclient-dev)来迁移到mysql。只有系统默认的python(3.4)可以。

我的 ubuntu 服务器附带了 python 3.4,我所有的 django 工作和其他工作都依赖于 3.6。我了解到升级系统 python 是一个坏主意,所以我编译了 python 3.6 (altinstall).

当我跑的时候python3.6 manage.py migrate它给了我这个 mysql 错误:

_mysql_exceptions.ProgrammingError: (1064, "您的 SQL 语法有错误;请检查与您的 MySQL 服务器版本对应的手册,以了解在第 1 行 '(6) NOT NULL)' 附近使用的正确语法")

我尝试了虚拟环境和普通的 python 3.6,都给出了相同的错误,并且我确保libmysqlclient-dev and mysqlclient已安装。

as 这个答案表明,问题在于libmysqlclient-dev因为它是通过安装的apt-get not pip所以我猜它只与默认的python(系统自带的3.4)兼容,或者我编译的python 3.6不允许使用它,因为当我用python3.4(系统默认的)创建一个虚拟的django项目并尝试时python3.6 manage.py migrate在同一个用户的同一个mysql数据库上,它工作了!

再次:我的问题是手动编译的 python 3.6 无法使用libmysqlclient-dev已安装apt-get,只有3.4可以

参考:Django MySQL 迁移时出错

UPDATE我想出了一个解决办法,但效率不高。我将 Django 降级到 2.0.9 并且它(python manage.py migrate)工作了。但使用不同的包可能会再次出现此问题。


Django 2.1.* 需要 MySQL 5.6 或更高版本。它通过映射破坏了兼容性DateTimeField to datetime(6).

您可以修补 Django MySQL 数据类型映射器。把这个放在你的顶部settings.py

from django.db.backends.mysql.base import DatabaseWrapper
DatabaseWrapper.data_types['DateTimeField'] = 'datetime' # fix for MySQL 5.5
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django 迁移错误 _mysql_exceptions.ProgrammingError: (1064, "您的 SQL 语法有错误 的相关文章

随机推荐

  • PayPal 沙盒错误:Cookie 被阻止

    我正在使用贝宝沙箱帐户 一切正常 但是 现在它显示以下错误 cookie 已启用 我尝试使用不同的浏览器和不同的计算机 我仍然遇到同样的错误 我尝试清除cookies和缓存 但这没有用 有什么解决办法吗 请开启cookies以结帐 这是 P
  • Rails 4 模型始终返回 nil

    我对以下错误感到疯狂 我有一个 User 类 它的两个属性 生日和created at gt datetime 总是返回nil 除了它在数据库上有一个值 我正在使用设备来管理身份验证 这是数据库表 CREATE TABLE users id
  • 使用容器中的第 n 个元素,但使用另一个键

    我有两个向量 一种实际保存数据 假设是浮动 另一种保存索引 我想通过nth element索引向量 但我希望通过实际保存数据的向量来完成比较 我正在考虑一个函子 但我猜这仅提供了 运算符 我通过将数据向量设为全局向量来实现这一目标 但这当然
  • 如何使用Reactor(Spring WebClient)进行重复调用?

    我使用 Reactor Spring5 WebClient 作为我的反应式编程 API 我有 2 个 REST 端点要调用 第一个结果将作为第二个结果的参数 对于第二个 API 它将返回带有 hasMore 值的结果 如果这个值是true
  • 为什么H1标签不需要CSS中的类或id?

    我只是查看我的 CSS h1 标签的定义如下 h1 当其他所有内容都有 id 或 时它前面的类 标题标签不需要这个的原因是什么 我是否真的犯了一个错误 而他们确实需要一个错误 这意味着所有发生的情况 of h1会分享相同的风格 同样 您可以
  • 与机器相关的 _write 失败,并显示 EINVAL 错误代码

    在实际问题之前 这有一些冗长的背景 但是 它需要一些解释 以期消除一些转移注意力的内容 我们的应用程序是用 Microsoft Visual C 2005 开发的 使用第 3 方库 我们幸运地拥有其源代码 来导出另一个第 3 方应用程序中使
  • Mongo 和 find 始终限制为 100 个地理数据

    在尝试尝试 mongo 性能时 我发现 mongodb 的行为很奇怪 首先我用以下查询填充它 for i 0 i lt 10000000 i db location insert id Math floor Math random 1000
  • Android xxhdpi、420 ​​dpi 和 480 dpi

    我面临下一个问题 我有一个values xxhdpi 及其dimensions xml 480 dpi 的设备非常适合此文件夹 问题是 例如三星 Galaxy S4 或 S5 会从该文件夹中捕获值 但在屏幕上看起来不太好 因为它们的分辨率为
  • JavaScript 专家请注意:需要 setInterval() 方面的帮助

    我正在尝试为房地产商店橱窗制作非交互式展示 我已经有一段时间没玩了setInterval 我的脚本第一次执行时 一切都很好 但是当它尝试通过以下方式获取下一个属性时getNextProperty 它开始变得混乱 如果您有 Firebug 或
  • 从OutputStream创建InputStream的最有效方法

    这一页 http blog ostermiller org convert java outputstream inputstream描述如何从OutputStream创建InputStream new ByteArrayInputStre
  • 如何在 android pie(9) 设备中获取当前的 wifi 连接名称?

    我知道这对你来说很简单 在这里 我只是尝试在 Android Pie 设备中获取 WiFi 名称 借助下面的代码行 我可以获取 Nogout 设备的 WiFi 名称 String ssid wifiInfo getSSID 我已经尝试了很多
  • 如何根据创建日期以外的其他时间对 Sitecore 项目进行存储?

    我将 Sitecore 与 DMS Sitecore 7 2 结合使用 并在布局上设置各种控件 以根据用户个人资料卡从不同文件夹中提取内容 我希望这些文件夹成为 桶 文件夹 因为每个个人资料卡都有一个文件夹 对于作者来说 每次新的个人资料卡
  • 创建一个 Pandas 数据框,其中包含跨越某个日期范围的项目计数

    我有一个 DF 有两个感兴趣的日期 看起来有点像 LIST DATE END DATE 2000 04 18 2000 05 17 00 00 00 2000 05 18 2000 09 18 00 00 00 2000 04 18 200
  • 可以将 Google 模块与 Eclipse 的 Google 插件一起使用吗?

    我的目标是开发使用新 Google 模块的 Java 应用程序 我想使用适用于 Eclipse 的 Google 插件 因为它易于调试并上传到 Google 问题是我不知道是否可以将 Google Plugin for Eclipse 用于
  • WooCommerce 3.5.4 和 WordPress 5.0.3 REST API:图像上传损坏 (woocommerce_product_invalid_image_id)

    我正在使用 REST API v2 此代码在旧版本的 WordPress 和 WooCommerce 上运行良好 我无法将图像上传到产品 升级后我遇到的第一个错误是 array code gt woocommerce product ima
  • 如何在每个月的第一个星期四安排一个 cron

    我需要安排一个 cron 作业在每月第一个星期四下午 3 00 运行 我怎样才能做到这一点 我读过另一个与此类似的主题 但它是针对每个月的第一个星期日的 我如何修改它以满足我的需要 请不要让我参考任何手册 因为它们对我没有任何帮助 这就是我
  • c# - 如何向资源添加字符串?

    如何将字符串添加到资源中 因此 当我重新启动程序时 该字符串应该位于资源中 添加后我怎样才能得到它 例如 textBox1 Text string that I ve added 谢谢 资源并不是解决您问题的正确解决方案 它们旨在提供各种
  • 使用 Ion Auth 在 Codeigniter 中创建用户角色和配置文件

    我使用 Codeigniter 和 Ion Auth 进行用户管理 我想创建两种不同的用户角色 一种用于志愿者 一种用于组织 我知道我可以使用 Ion Authgroups对于访问控制之类的事情 但是向不同用户类型添加字段的好方法是什么 例
  • 重用数据库连接

    到目前为止 每当我查询数据库时 我都会打开一个与数据库的新连接 如何实现一旦打开连接就可以重用该属性 完成此操作后 请告诉我是否可以泄漏资源 基本上你需要 JDBC 连接池 通常实现DataSource界面 看一下dbcp and c3p0
  • Django 迁移错误 _mysql_exceptions.ProgrammingError: (1064, "您的 SQL 语法有错误

    TL DR python版本冲突 我认为我下载并编译的python 3 6 无法使用这个包 libmysqlclient dev 来迁移到mysql 只有系统默认的python 3 4 可以 我的 ubuntu 服务器附带了 python