当前位置: 首页 > article >正文

有关django、python版本、sqlite3版本冲突问题

  本篇是解析为什么会出现python版本使用旧版本的sqlite3版本的问题,解决办法在下面有备注,如有遗漏之处或错误,望佬们指出,再次感谢不禁~~

【坑点】更新python版本,并不会让sqlite版本实时更新,依旧是调用首个python版本的sqlite3版本
【影响】Django版本所需要的sqlite3版本有一定要求,版本不匹配,会出现无法运行的情况

Ⅰ 复现情况

import sqlite3
print(sqlite3.version_info) #显示sqlite3版本信息
print(sqlite3.sqlite_version) #显示SQLite版本信息
# 快速执行
python -c "import sqlite3; print(sqlite3.sqlite_version)"
python -c "import sqlite3; print(sqlite3.version_info)"

3.12.3
[图片]

3.12.6
[图片]

2.7
[图片]
不难看出来一点,就是更换了python版本,所使用的SQLite版本不升级

Ⅱ 原因分析

  在前面,始终提到一个点,就是"更换了python版本,所使用的SQLite版本不升级",那究竟是什么原因导致的。
  实际上,sqlite3版本是最终会走到/usr/bin/sqlite3这个文件上,每次的python更新或者用虚拟环境更换python版本,并不会让这个文件替换掉,依旧是使用最初安装的那一个python对应的sqlite3版本。

ls -al /usr/bin/sqlite3

在这里插入图片描述

Ⅲ 解决办法

  需要手动下载一个sqlite3包,然后将最初那一个替换掉,即可,详细参考这篇文章 Sqlite版本过低报错

参考文献

  • https://blog.csdn.net/weixin_44917272/article/details/104359610
  • https://blog.csdn.net/lyz19961221/article/details/121747179

http://www.kler.cn/a/401654.html

相关文章:

  • 鲸鱼机器人和乐高机器人的比较
  • C++AVL平衡树
  • 初级数据结构——栈与队列的互相实现
  • sapiens推理的安装与使用
  • MySQL 怎么不丢数据(关于开启双1配置)
  • JavaWeb——JS、Vue
  • Brave127编译指南 Linux篇-环境配置(五)
  • Python+7z.exe实现自动化压缩与解压
  • 【代码随想录|回溯算法排列问题】
  • 微信小程序-prettier 格式化
  • java实现贪心算法
  • SAM-Med2D 训练完成后boxes_prompt没有生成mask的问题
  • 首次实现!在Docker容器中运行macOS项目,自动化下载与Web体验
  • 高效整合:汤臣倍健营销云数据集成到金蝶云星辰V2解析
  • 鸿蒙NEXT开发案例:计数器
  • SIMCom芯讯通A7680C在线升级:FTP升级成功;http升级腾讯云对象储存的文件失败;http升级私有服务器的文件成功
  • K8s 概念知识梳理
  • 如何修复苹果手机上的绿屏 - 快速简便的解决方案
  • .NET 9 的新增功能
  • 【JAVA基础】JVM垃圾回收机制
  • HarmonyOS NEXT应用元服务开发Intents Kit(意图框架服务)事件推荐开发者测试
  • 人工智能之机器学习概念3【培训机构学习笔记】
  • 学习笔记021——Ubuntu 安装 MySQL 5.7版本
  • 通过 SSH 管理 WordPress 网站的文件和目录
  • 反转链表方法分享
  • Mac安装Docker Desktop搭建K8s集群,解决镜像无法下载的问题