首页 > 数据库 >sqlite3版本过低

sqlite3版本过低

时间:2023-11-17 16:44:06浏览次数:26  
标签:__ pysqlite3 django 版本 import sqlite3 过低 main

报错信息

django.db.utils.NotSupportedError: deterministic=True requires SQLite 3.8.3 or higher

使用 sqlite3 有时候会出现跟 django 版本不兼容的问题。
如果我们还想使用 sqlite3 该怎么办?

解决方法

安装pysqlite3

pip3 install pysqlite3
pip3 install pysqlite3-binary

使用pysqlite3(两种方式)

  • 修改 manage.py 启动文件
#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys


def main():
    """Run administrative tasks."""
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'application.settings')
    try:
        from django.core.management import execute_from_command_line
        import pysqlite3
        sys.modules['sqlite3'] = pysqlite3
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)


if __name__ == '__main__':
    main()

  • 修改源码
进入如下路径中的文件:
env/lib/python3.8/site-packages/django/db/backends/sqlite3/base.py
然后:
# from sqlite3 import dbapi2 as Database # 注释
from pysqlite3 import dbapi2 as Database # 新增导入

标签:__,pysqlite3,django,版本,import,sqlite3,过低,main
From: https://www.cnblogs.com/BaiJiaZhengMing/p/17839121.html

相关文章

  • linux系统多版本boost共存
    因为几个库都用到boost,但是各个库依赖的boost最低版本不一样安装boost1.71tar-zxvfboost_1_71_0.tar.gz&&cdboost_1_71_0su-root./bootstrap.sh--with-libraries=all./b2./b2install 用./b2install把boost1.71安装在默认路径了,即/usr/local下,头文件和库文件分别位......
  • 新版本 el-input 不支持 v-model.trim,自定义指令去除首尾空格
    问题场景<el-inputtype="textarea"v-model.trim="value"/>多行文本输入框无法换行。经测试,去掉.trim修饰符后,就可正常换行了。从官网文档,发现element-ui新版本不支持v-model修饰符。因此,若在新版本的element-ui的el-input中使用v-model.trim,会发生以下问题......
  • linux系统多版本boost库共存
    因为几个库都用到boost,但是各个库依赖的boost最低版本不一样安装boost1.71tar-zxvfboost_1_71_0.tar.gz&&cdboost_1_71_0su-root./bootstrap.sh--with-libraries=all./b2./b2install用./b2install把boost1.71安装在默认路径了,即/usr/local下,头文件和库文件分别......
  • 金蝶云星空签出元数据提示“数据中心业务对象版本高于应用版本”
    一、签出元数据报错 二、建议每次签出元数据前,先获取最新的代码后再签出,如果还是提示,那就根据你的情况选择版本。......
  • sql server 备份还原 版本一致性问题
      SELECT@@VERSIONAS'SQLServer版本号'......
  • JDK 版本对照 versions
    JDKversion和classfileversion(Class编译版本号)对应关系  JDK17=61,  JDK16=60,  JDK15=59,  JDK14=58,  JDK13=57,  JDK12=56,  JDK11=55,  JDK10=54,  JDK9=53,  JDK8=52,  JDK7=51,  J......
  • Django2.0以上版本path方法——路由层使用的转换器(五种)
    str#匹配除了路径分隔符(/)之外的非空字符串,这是默认的形式int#匹配正整数,包含0。slug#匹配字母、数字以及横杠、下划线组成的字符串。uuid#匹配格式化的uuid,如075194d3-6885-417e-a8a8-6c931e272f00。path#匹配任何非空字符串,包含了路径分隔符(/)使用方式:p......
  • python 多版本管理pyenv和虚拟环境pipenv的使用方法
    1.安装linux下直接使用pipinstallpipenv/pyenvwindows下(windows环境笔记复杂,本文着重讲解windows环境下的多版本管理)在python的bin目录里面执行pipinstallpyenv-win--target[yourpathwheretostorepyenv]......
  • python windows环境自己的程序实现命令行补全/使用pyreadline实现(目前已知唯一方法,对p
    1.环境前提注意事项python3版本最好是3.10以下(理论上),最新版可能会有问题,本文使用python3.7.2版本本文环境是用pipenv加pyenv虚拟环境实现的,想了解的去我的主页搜素相关博文安装pyreadline(全平台通用win/linux)pipinstallpyreadline版本问题报错请参考:https://blog.csdn......
  • 【达梦8大小版本更换后适配flowable6.8报错Error initialising eventregistry data mo
    达梦8大小版本更换后适配flowable6.8报错问题背景:当前代码使用达梦8并适配了flowable6.8工作流,在达梦8小版本2021版更新到达梦8小版本2023后出现报错,报错如下:-Applicationrunfailedorg.springframework.beans.factory.UnsatisfiedDependencyException:Errorcreatingbea......