QSqlQuery无法正常工作

时间:2017-09-29 12:00:10

标签: c++ sql qt sqlite qsqlquery

所以基本上我有这个问题,我不能执行我的QsqlQuery。 我连接到SQLite数据库,我已检查它是否真的已连接。

Mainwindow.cpp

这是设置数据库连接的mainwindow.h代码的一部分。数据库在databaseCheck中声明,这一部分都在运行。

这里我得到一个表单,它返回一些我想在数据库中创建的员工数据。 name是一个bool,告诉我数据库是否正确连接。在这种情况下,surnamemainwindow.h等变量在QString中声明为if (databaseCheck) { form = new Form(this); form->setWindowTitle("Formulář informací o zaměstnanci."); form->exec(); name = form->getName(); surname = form->getSurname(); id = form->getId(); date = form->getDate(); telephone = form->getTelephone(); salary = form->getSalary(); state = form->getState(); QSqlQuery query(mydb); query.prepare("INSERT INTO employees (jmeno,prijmeni,datumnarozeni,telefon,plat,stav) " "VALUES (:name, :surname, :date, :telephone, :salary , :state)"); query.bindValue(":name", name); query.bindValue(":forename", surname); query.bindValue(":date", date ); query.bindValue(":telephone", telephone); query.bindValue(":salary", salary); query.bindValue(":state", state ); query.exec(); }

employees

在我填写表格并提供有关员工的一些数据并接受后,它不会向数据库发送任何内容。我正在使用DB Browser for SQLite检查数据库,表line_values = {'message': self.message, 'number': self.number, 'partner_id': 1, #'user_acc': self.user_acc, #'date_time': self.date_time, } print "Values:", line_values #return line_values return self.env['sale.order'].create(line_values) 完全为空。有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

您的SQL似乎是正确的,最好的方法可能是写这样的东西。

if (!query.exec())
      qDebug() << query.lastError();