有关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版本过低报错

参考文献

相关推荐
天天被压力9 分钟前
【A股分钟级高频数据完全手册 #02】Python调用股票1分钟数据接口:Pro版最新分时取数与字段解析
java·人工智能·python
天天被压力28 分钟前
【A股分钟级高频数据完全手册 #01】Pro版接口体系总览与REST鉴权:42篇地图与从0接入
java·人工智能·python
xyouyuweizhu31 分钟前
Java InetAddress 详解:从 IP 地址表示到主机名解析
java·开发语言·python
belldeep9 小时前
python:genesis-world, Genesis-Embodied-AI
人工智能·python·ai·genesis
benchmark_cc10 小时前
A 股、港股、美股如何建立统一的标的主数据格式?
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
维克兜率天11 小时前
【维克】趋势型CTA:期货市场的“追涨杀跌“
人工智能·python
取名真是12 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
梦想不只是梦与想12 小时前
PyTorch、CPU、GPU、CUDA
人工智能·pytorch·python·深度学习·机器学习·cuda
数字融合12 小时前
透明化视频孪生危化安全管控解决方案
人工智能·python·安全
别问!问就是全会13 小时前
Jupyter Notebook 安装包下载|单元格分块运行,图表直接内嵌
ide·python·其他·jupyter