问题描述
我正在PyQt5中创建数据库GUI,并且得到了QSqlQuery::exec: database not open
,我已经查看了类似问题的答案,但没有帮助。
self.db.setDatabaseName('demodatabase.db')
self.query = QtSql.QSqlQuery(self.db)
self.query.exec_("CREATE TABLE new1 (id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE NOT NULL,name VARCHAR(100))")
解决方法
该错误消息非常有用:您必须打开连接:
self.db.setDatabaseName('demodatabase.db')
if not self.db.open():
print(self.db.lastError().text())
self.query = QtSql.QSqlQuery(self.db)
self.query.exec_("CREATE TABLE new1 (id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE NOT NULL,name VARCHAR(100))")