使用qt在数据库中的ID

时间:2015-06-14 20:19:25

标签: database qt sqlite

我是qt的新手。我在sql中创建了一个表,我试图做的是在用户添加数据时给出一个id。对于插入的第一件事,它将是1,第二个2,依此类推。那么如何检查最后一个是多少?我应该创建query.prepare(sql statement)还是有其他方式?

1 个答案:

答案 0 :(得分:3)

您正在寻找的方法是QSqlQuery::lastInsertId()。引用the documentation

  

返回数据库中最近插入的行的对象ID   支持它。如果查询没有,将返回无效的QVariant   插入任何值或数据库不报告该ID。如果   插入触摸了多行,行为是   未定义。

我可以从经验中确认,Qt中的SQLite数据库确实支持此功能。

您可以将变体转换为数据库ID,如下所示:

qint64 insertID = query.lastInsertId().toLongLong();