python操作sqlite数据库报错DLL load failed while importing _sqlite3: 找不到指定的模块
pthon3.8通过import sqlite3模块操作sqlite数据库结果出现报错,网上找了很多包括去下载sqlite3.dll及sqlite3.def到指定dll目录都不行,最后使用import apsw这个模块实现了操作sqlite
C:UsersAdministratorDesktop>python dbmethod.py Traceback (most recent call last): File "dbmethod.py", line 5, in <module> import sqlite3 File "C:UsersAdministratorAppDataLocalProgramsPythonPython38libsqlite3__init__.py", line 23, in <module> from sqlite3.dbapi2 import * File "C:UsersAdministratorAppDataLocalProgramsPythonPython38libsqlite3dbapi2.py", line 27, in <module> from _sqlite3 import * ImportError: DLL load failed while importing _sqlite3: 找不到指定的模块。
上面是报错信息,下面改apsw后也实现了同样的目的(注意连接数据库最好用绝对路径)
import apsw import time #conn=apsw.Connection("mock_data.db")#这里的路径最好用绝对路径!绝对路径!绝对路径!否则可能报错SQLError: no such table: xxxx current_directory = os.path.dirname(os.path.abspath(__file__)) conn=apsw.Connection(current_directory+"/mock_data.db") cursor=conn.cursor() create_time=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) url='url' data='data' method='method' remark='666ranjuan.cn' info = (url,data,create_time,method,remark) #例一 往数据库表中添加记录 sql = """INSERT INTO apiactions( url,data,create_time,method,remark) VALUES(?,?,?,?,?);""" print(sql) # 执行SQL语句 cursor.execute(sql, info) #####附其他代码片段######### #例二 查询数据库 def selectByCode(data): data =[] # 查询数据库表 sql = f"""SELECT * FROM apiactions WHERE data= '{data}' ORDER BY id desc;""" # print(sql) results = cursor.execute(sql) # 转成元组组成的列表 codes = results.fetchall() # """创建数据库表""" def createTable(): # 如果表不存在,则创建,表我是用navicat创建的,如果没有数据库可视化管理软件,可以试下这个语句能否创建成功 sql = """CREATE TABLE IF NOT EXISTS apiactions ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, url TEXT, data TEXT, create_time TEXT, method TEXT DEFAULT query, remark TEXT );""" # 执行SQL指令 cursor.execute(sql)
python操作sqlite的另一个坑
在使用apsw的时候也遇到一些报错,当时忘记具体报错内容了(当然也可能是我安装的python版本太混乱了),最后是直接下载安装apsw模块后放到python脚本所在目录了!如果后面你也遇到明明pip install已经将模块安装成功但是就是报错模块不存在的情况,那么可以尝试将对应模块文件夹整个复制到python脚本所在目录!
基于互联网精神,在注明出处的前提下本站文章可自由转载!
本文链接:https://ranjuan.cn/python-sqlite3-dll-load-failed/
赞赏
微信赞赏支付宝赞赏
发表评论