我正在Ubuntu中使用PyQT进行编码(使用anaconda / spyder环境),并且我正尝试通过QSqlDatabase访问数据库,但是 `
SharedPreferences
`
给我
驱动程序未加载
['QSQLITE']
我在/ usr / include和/ usr / lib中有sqlite文件,并寻找答案,但大多数都来自不可用的驱动程序(我的似乎还可以),mysql驱动程序,在Windows上以及Qt,所以我没能通过看网来解决问题。
感谢您的回答!
编辑:
db = QSqlDatabase()
db.addDatabase('QSQLITE',"SQLITE")
db.setDatabaseName("test.db")
if(db.open()):
print("Opened!")
db.close()
else:
print(db.lastError().databaseText())
print(list(map(str, db.drivers())))
答案 0 :(得分:0)
所以环境不是问题,但是我的代码是问题。看了很多,我跳过了开始(我太快地传递给QSqlDatabase文档中的驱动程序部分)。
QSqlDatabase :: QSqlDatabase()
创建一个空的无效QSqlDatabase对象。
所以我只需要替换
db = QSqlDatabase()
db.addDatabase('QSQLITE',"SQLITE")
按行:
db = QSqlDatabase.addDatabase('QSLITE')
我之前的代码给了我
已打开!