社区首页 >问答首页 >如何修复django.db.utils.DatabaseError

如何修复django.db.utils.DatabaseError
EN

Stack Overflow用户
提问于 2021-01-26 02:59:25
回答 4查看 1.4K关注 0票数 2

如何修复Django数据库错误。我在Djongo中使用MongoDB。

直到最近我决定添加NewApp之前,一切都运行得很好。每当我尝试迁移时,它都会用django.db.utils.DatabaseError向我打招呼。

我尝试手动重置DataBase,也尝试从终端重置,但没有成功。

我认为这非常简单,但我对Django很陌生,而且MongoDB似乎不知道如何修复它,任何帮助都将不胜感激。

下面是错误的样子。

代码语言:javascript
代码运行次数:0
复制
Not implemented alter command for SQL ALTER TABLE "articles_article" ADD COLUMN "author_id" int NOT NULL
  Applying articles.0002_article_author...Traceback (most recent call last):
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/cursor.py", line 51, in execute
    self.result = Query(
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 783, in __init__
    self._query = self.parse()
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 875, in parse
    raise e
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 856, in parse
    return handler(self, statement)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 888, in _alter
    query = AlterQuery(self.db, self.connection_properties, sm, self._params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 425, in __init__
    super().__init__(*args)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 84, in __init__
    super().__init__(*args)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 62, in __init__
    self.parse()
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 435, in parse
    self._add(statement)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/sql2mongo/query.py", line 598, in _add
    raise SQLDecodeError(err_key=tok.value,
djongo.exceptions.SQLDecodeError: 

    Keyword: int
    Sub SQL: ALTER TABLE "articles_article" ADD COLUMN "author_id" int NOT NULL
    FAILED SQL: ('ALTER TABLE "articles_article" ADD COLUMN "author_id" int NOT NULL',)
    Params: ([],)
    Version: 1.3.3

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/cursor.py", line 59, in execute
    raise db_exe from e
djongo.database.DatabaseError

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "manage.py", line 21, in <module>
    main()
  File "manage.py", line 17, in main
    execute_from_command_line(sys.argv)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/__init__.py", line 401, in execute_from_command_line
    utility.execute()
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/__init__.py", line 395, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/base.py", line 328, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/base.py", line 369, in execute
    output = self.handle(*args, **options)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/base.py", line 83, in wrapped
    res = handle_func(*args, **kwargs)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/core/management/commands/migrate.py", line 231, in handle
    post_migrate_state = executor.migrate(
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/migrations/executor.py", line 117, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/migrations/executor.py", line 147, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/migrations/executor.py", line 245, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/migrations/migration.py", line 124, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/migrations/operations/fields.py", line 110, in database_forwards
    schema_editor.add_field(
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 480, in add_field
    self.execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/base/schema.py", line 142, in execute
    cursor.execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 100, in execute
    return super().execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 68, in execute
    return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers
    return executor(sql, params, many, context)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/utils.py", line 90, in __exit__
    raise dj_exc_value.with_traceback(traceback) from exc_value
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute
    return self.cursor.execute(sql, params)
  File "/Users/username/opt/anaconda3/envs/restApi/lib/python3.8/site-packages/djongo/cursor.py", line 59, in execute
    raise db_exe from e
django.db.utils.DatabaseError

谢谢您抽时间见我。

EN

回答 4

Stack Overflow用户

发布于 2021-06-29 08:18:41

我也遇到了同样的错误,如果提到的其他方法都不起作用,那么可能是您的sqlparse版本错误。我的是0.4.1,这在某些地区不起作用。您必须拥有0.2.4版。

代码语言:javascript
代码运行次数:0
复制
pip install sqlparse==0.2.4
票数 2
EN

Stack Overflow用户

发布于 2021-03-24 09:14:55

这也发生在我身上。我通过将Django从2.1.7升级到3.1.7,删除迁移文件并再次运行makemigrations解决了这个问题。然后,当我迁移时,没有更多的错误。显然,Django 2.1.7生成的迁移文件与3.1.7不同。

编辑:如果你在使用"filter“进行查询时遇到同样的错误,请尝试将你的Django版本降级到3.0.5。

票数 1
EN

Stack Overflow用户

发布于 2021-06-08 22:17:30

嗨,这种情况经常发生。下面是通过三个简单步骤完成的操作

  1. 转到您的应用程序

的迁移目录

删除allnumbers_initial.py或

  1. 0001_initial.py

  1. 运行makemigrations,然后再次迁移。您的问题一定会得到解决。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65895320

复制
相关文章
JavaScript获取高度和宽度
屏幕分辨率为:screen.width screen.height 屏幕可用大小:screen.availWidth screen.availHeight 网页可见区域宽:document.body.clientWidth 网页可见区域高:document.body.clientHeight 网页可见区域宽(包括边线的宽):document.body.offsetWidth 网页可见区域高(包括边线的宽):document.body.offsetHeight 网页正文全文宽:document.b
苦咖啡
2018/05/07
3.7K0
JavaScript 获取屏幕的高度和宽度
screen.availHeight:显示浏览器的屏幕的可用高度(这个可用高度不包括分配给半永久特性(如屏幕底部的任务栏)的垂直空间。)
aehyok
2018/09/11
7.2K0
JavaScript  获取屏幕的高度和宽度
iframe自适应高度和宽度[通俗易懂]
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/11/04
3.8K0
JavaScript、Jquery获取屏幕的宽度和高度
在日常的项目中经常需要获取屏幕的宽度或者高度,简单记录一下: Javascript方法获取: document.body.clientWidth //网页可见区域宽 document.body.clientHeight //网页可见区域高 document.body.offsetWidth //网页可见区域宽(包括边线的宽) document.body.offsetHeight //网页可见区域高(包括边线的高) document.body.scrollWidth //网页正文全文宽 document.b
德顺
2019/11/13
5.3K0
JavaScript 获取图片的宽度和高度的方法
因为加载图片是异步的,在图片的相关数据没有加载完之后,宽高都是默认为0,所以我们要给imgDom增加个onload方法。
李维亮
2021/07/08
2.7K0
对nwpu数据集的宽度和高度进行修改
NWPU VHR-10目标检测数据集中的ground truth,统一为256x256有时候在使用的时候很不方便,因此需要将宽和高指定为真实的宽和高,python的源代码如下,
狼啸风云
2019/06/14
1.7K0
如何在onCreate中获取View的高度和宽度
在开发过程中经常需要获取到View的宽和高,可以通过View.getWidth()和View.getHeight()来得到宽高。然而新手们经常在onCreate方法中直接调用上面两个方法得到的值是0!
阳仔
2019/07/31
5.3K0
iframe自适应高度和宽度_自适应框架
var ifm_content = document.getElementById(“conFrame”);
全栈程序员站长
2022/11/19
2.9K0
js获得浏览器高度和宽度 参数
document.documentElement.clientHeight -->浏览器的高度
botkenni
2019/09/03
6.1K0
OC中获取一串字符串的高度(宽度确定)或宽度(高度确定)
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/52937475
用户1451823
2018/09/13
2.6K0
微信小程序-自动适配屏幕高度和宽度
微信小程序里面的height和width有几种单位,分别是 rpx px vh 和 vw。
叉叉敌
2019/08/16
11.9K0
iOS开发小技巧:根据文本,字体,计算UILabel高度及宽度
关于boundingRectWithSize,系统API有几个类的相关方法。搜索官方文档,可见如下:
陈满iOS
2018/09/10
5.4K0
iOS开发小技巧:根据文本,字体,计算UILabel高度及宽度
关于Div的宽度与高度的100%设定
正像你所知道的那样,设置DIV大小的有两个属性width和height,以前在学习DIV每次给DIV设置100%宽度或高度时都很迷惑,不明确这个100%的宽度(高度)到底有多宽有多高?这个100%是从哪里得到的从哪里继承的?今天我们的话题就是有关div高度100%的问题!
bear_fish
2018/09/19
3.9K0
1501 二叉树最大宽度和高度
1501 二叉树最大宽度和高度 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 题目描述 Description     给出一个二叉树,输出它的最大宽度和高度。 输入描述 Input Description 第一行一个整数n。 下面n行每行有两个数,对于第i行的两个数,代表编号为i的节点所连接的两个左右儿子的编号。如果没有某个儿子为空,则为0。 输出描述 Output Description 输出共一行,输出二叉树的最大宽度和高度,用一个空格隔开。 样例
attack
2018/04/12
8620
跨浏览器获取不同环境的window窗口宽度和高度
IE9+、Firefox、Safari、Opera和Chrome均为此提供了4个属性: innerWidth 、 innerHeight 、 outerWidth 和 outerHeight 。
德顺
2019/11/13
2.8K0
ie8和chrome获取上传图片的宽度和高度等尺寸
测试后可用 <html> <head>     <title>测试</title>     <meta charset="utf-8"/>     <link rel="styleshee
汤高
2018/03/28
1.8K0
win10 uwp 获取窗口的坐标和宽度高度 获取可视范围获取当前窗口的坐标和宽度高度获取最前窗口的范围
本文会经常更新,请阅读原文: https://lindexi.gitee.io/post/win10-uwp-%E8%8E%B7%E5%8F%96%E7%AA%97%E5%8F%A3%E7%9A%84%E5%9D%90%E6%A0%87%E5%92%8C%E5%AE%BD%E5%BA%A6%E9%AB%98%E5%BA%A6.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。
林德熙
2019/03/13
3.8K0
纯CSS实现移动端常见布局——高度和宽度挂钩的秘密
不踩坑不回头.之前我在一个项目中大量使用css3的calc计算属性.写代码的时候真心不要太爽啊…但是在项目上线之后,才让我崩溃了,原因很简单,在低于安卓4.4的版本的手机上,自带的浏览器是不支持这个属性的.
FungLeo
2022/05/05
1.3K0
纯CSS实现移动端常见布局——高度和宽度挂钩的秘密
overflow和动态计算高度
首先是MDN:https://developer.mozilla.org/zh-CN/docs/Web/CSS/overflow
阿超
2022/08/21
1.4K0
overflow和动态计算高度
C# dotnet 使用 OpenXml 解析 PPT 元素的坐标和宽度高度
在阅读本文之前,我期望你能了解基础的 PPT 解析内容,或看我的入门级博客。本文将告诉大家如何从 PPT 里面解析出通用元素的 x 和 y 的值,以及元素的宽度和高度的值
林德熙
2020/03/20
1.7K0

相似问题

如何计算图像的高度和宽度

31

如何计算图像的比例宽度和高度?

130

Jquery从图像URL计算图像的宽度和高度

30

计算宽度和高度以调整图像大小

63

计算绘制图像的高度和宽度

29
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文