【问题标题】:sqlite3 update conflict with django (Windows10) SQLite 3.8.3 or later is required (found 3.7.17))sqlite3更新与django冲突(Windows10)需要SQLite 3.8.3或更高版本(找到3.7.17))
【发布时间】:2020-03-27 16:59:40
【问题描述】:

我使用的是 Windows 10 并安装了 django 当我导航到运行 manage.py 文件的文件夹时

python manage.py runserver

我得到以下输出

SQLite 3.8.3 or later is required (found 3.7.17))

我使用的是 python 3.7.7,安装的 Sqlite 包是 3.31.1。任何想法如何解决这个问题?

尝试通过 pycharm 降级到 django 2.1.2 但没有成功。

【问题讨论】:

  • 运行python3 manage.py runserver时会发生什么?
  • 非常感谢,如果我在 pycharm 的终端中输入它,什么也不会发生。我只是移动到下一行

标签: django sqlite


【解决方案1】:

看起来 django 使用的是旧版本的 SQLite。假设您使用的是 django 2.2,它需要 sqlite 版本 >= 3.8.3。

检查正在使用的 SQLite python 版本:

$ python
Python 3.7.3 (default, Apr 12 2019, 16:23:13) 
>>> import sqlite3
>>> sqlite3.sqlite_version
'3.27.2' #This should give you 3.31.1

检查您的系统使用的 SQLite 版本

C:\>sqlite3
SQLite version 3.7.15.2 2013-01-09 11:53:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite>

如果不是正确的版本,考虑从here安装SQLite包

在 Windows 上安装 SQLite 的步骤

  1. 第 1 步 - 转到 SQLite 下载页面,下载预编译的 Windows 部分的二进制文件。

  2. 第 2 步 - 下载 sqlite-shell-win32-.zip 和 sqlite-dll-win32-.zip 压缩文件。

  3. Step 3 - 创建一个文件夹 C:>sqlite 并解压缩以上两个压缩文件 在这个文件夹中,它将为您提供 sqlite3.def、sqlite3.dll 和 sqlite3.exe 文件。
  4. 步骤 4 - 在 PATH 环境变量中添加 C:>sqlite 和 最后进入命令提示符并发出 sqlite3 命令,该命令 应显示以下结果。

【讨论】:

  • 非常感谢您的回答。问题是 sqlite3.sqlite_version 给了我 3.7.17 但是如果我检查 pycharm 中安装的包是看到 3.31.... 所以我不明白为什么会这样?
  • 看起来系统默认使用3.7.17而不是pycharm包。我建议您将路径变量设置为指向 pycharm 中的包,而不是 3.7.17。在运行 sqlite3.sqlite_version 时,它应该会为您提供最新版本。
  • 抱歉,您能告诉我该怎么做吗?不幸的是我不知道如何找到路径变量....
  • 我在这个虚拟环境中更新了 sqlite3 还是一样....
  • 非常感谢您的帮助。我查看了视频,但由于我仅通过 python 安装了 sqlite,我并不真正理解这一点。对不起,我无法解决它。我已经卸载了我的 anaconda 和 pycharm。然后我安装了所有全新的。然后我在环境中通过 conda 更新了 sqlite。然后当我在我的 pycharm 中检查 sqlite 版本时,我再次得到 3.7.17 我真的很困惑....这个旧版本来自哪里?我在哪里可以删除它?
猜你喜欢
  • 2019-09-04
  • 2020-08-24
  • 2020-06-24
  • 2020-12-11
  • 2020-07-04
  • 2022-11-04
  • 2022-07-03
  • 2019-10-24
  • 2020-06-14
相关资源
最近更新 更多