Qt中的数据库创建错误

时间:2011-02-07 08:56:43

标签: c++ database qt qt4

我正在使用此代码创建数据库。但我在调试中得到“假”。我尝试了很多,但它不起作用。这有什么错误?

 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();

3 个答案:

答案 0 :(得分:5)

您忘记使用CREATE TABLE

关闭")"查询

答案 1 :(得分:2)

QSqlQuery有方法lastError(),返回错误信息:)

答案 2 :(得分:1)

您正在INSERT查询id字段。你必须删除它。

查询应为:

Debug() << query.prepare("INSERT INTO glucose(value, date, time, duration, note) 
                                      VALUES(?, ?, ?, ?, ?)");