所以基本上我有这个问题,我不能执行我的QsqlQuery。 我连接到SQLite数据库,我已检查它是否真的已连接。
Mainwindow.cpp
这是设置数据库连接的mainwindow.h
代码的一部分。数据库在databaseCheck
中声明,这一部分都在运行。
这里我得到一个表单,它返回一些我想在数据库中创建的员工数据。 name
是一个bool,告诉我数据库是否正确连接。在这种情况下,surname
,mainwindow.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)
完全为空。有人能帮助我吗?
答案 0 :(得分:0)
您的SQL似乎是正确的,最好的方法可能是写这样的东西。
if (!query.exec())
qDebug() << query.lastError();