使用QT+sqlite3进行编码,需要获取符合条件的记录数目,意外的发现常用的获取方式无法工作,尝试了四种方式:
1.通过数据库的特征进行判断,如果不支持查询记录数目的特性,就使用笨方法(获取记录最后一条的序号,然后加一,这种方式运行略慢)
2.有人建议使用这种方式,颇为的荒谬,queryResult.record()是获取字段域的值集合,只有一行记录符合要求,但是表有2个字段,那么使用这种方式获取的就是2,而并不是1.
3.从第一种方式可以看出,如果数据库不支持这种特性,那么它是完全无用的,返回-1
4.同size(),如果数据库不支持这种特性,只是返回0