我正在使用此代码创建数据库。但我在调试中得到“假”。我尝试了很多,但它不起作用。这有什么错误?
QSqlQuery query;
qDebug() << query.exec("CREATE TABLE glucose (id INTEGER PRIMARY KEY AUTOINCREMENT, value INTEGER, date TEXT, time TEXT, duration TEXT, note TEXT");
qDebug() << query.prepare("INSERT INTO glucose(id, value, date, time, duration, note)""VALUES(?, ?, ?, ?, ?, ?)");
query.bindValue(1,edit_glucose->text().toInt());
query.bindValue(2,datetime->date());
query.bindValue(3,datetime->time());
query.bindValue(4,"a");
query.bindValue(5,edit_note->toPlainText());
qDebug() << query.exec();
答案 0 :(得分:5)
您忘记使用CREATE TABLE
")"
查询
答案 1 :(得分:2)
QSqlQuery有方法lastError(),返回错误信息:)
答案 2 :(得分:1)
您正在INSERT
查询id
字段。你必须删除它。
查询应为:
Debug() << query.prepare("INSERT INTO glucose(value, date, time, duration, note)
VALUES(?, ?, ?, ?, ?)");