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

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

【坑点】更新python版本,并不会让sqlite版本实时更新,依旧是调用首个python版本的sqlite3版本

【影响】Django版本所需要的sqlite3版本有一定要求,版本不匹配,会出现无法运行的情况

Ⅰ 复现情况

shell 复制代码
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版本过低报错

参考文献

相关推荐
倚天仗剑走天涯WGM2 分钟前
对CANoe和VBA和TSmaster 三款工具的调用的理解
python
我命由我123453 分钟前
python-dotenv - python-dotenv 快速上手
服务器·开发语言·数据库·后端·python·学习·学习方法
黑客思维者3 分钟前
Python定时任务schedule/APScheduler/Crontab 原理与落地实践
开发语言·python·crontab·apscheduler
yaoxin5211238 分钟前
268. Java Stream API 入门指南
java·开发语言·python
测试人社区-千羽14 分钟前
48小时攻克测试岗——闪电面试极速备战手册
人工智能·python·opencv·面试·职场和发展·单元测试·压力测试
weixin_3903084619 分钟前
Python工具网站网址
python
电饭叔22 分钟前
指定私有浮点数据域get/set方法等《python语言程序设计》2018版--第8章18题第1部分
开发语言·python
kiki-bf43 分钟前
使用python把图片转为word
开发语言·python·word
长安牧笛43 分钟前
适老版线上超市,针对老年人的小程序,图片大,字大,主打日常用品+送货上门,还能电话下单,解决老年人不会用普通电商的问题。
python
@#---1 小时前
如何准确判断json文件并且拿到我想要的信息
android·python·json