我想使用Python PyQt将一些MySql查询转换为SQLite,但似乎无法使其工作。当我运行下面的代码时,没有打印出任何错误或结果。代码有什么问题?QtSql将MySql查询转换为SQLite
db = QSqlDatabase.addDatabase("QSQLITE")
db.setDatabaseName("TEST")
if not db.open():
QMessageBox.warning(None, "Database",
QString("Database Error: %1").arg(db.lastError().text()))
sys.exit(1)
query = QSqlQuery()
query.exec_("""CREATE TABLE IF NOT EXISTS CollectStatus (
id INTEGER NOT NULL AUTO_INCREMENT ,
status TEXT NOT NULL ,
PRIMARY KEY (id) ,
UNIQUE INDEX status_UNIQUE (status ASC));""")
query.exec_("INSERT INTO CollectStatus (status) VALUES (1)")
query.exec_("SELECT status FROM CollectStatus")
while query.next():
print(query.value(status).toString()[0])
db.close()
即使这样做后,我仍然看到数据库文件的大小为0字节。 –
您需要提交才能查看*事务中的结果*,但是在同一连接上,插入的数据无论如何都应该存在。 – SingleNegationElimination