首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

c++代码中如何最快速获取sqlite数据库某表中总条数,并且效率最高?

2013-02-25 
c++代码中怎么最快速获取sqlite数据库某表中总条数,并且效率最高??c++代码中怎么最快速获取sqlite数据库某

c++代码中怎么最快速获取sqlite数据库某表中总条数,并且效率最高??
c++代码中怎么最快速获取sqlite数据库某表中总条数,并且效率最高??

我们项目使用开源的sqlite3.c,CppSqlite3.cpp中函数来对创建sqlite数据库表。
现在,我需要在往一张表循环写入数据之前,首先获取当前表中已存在的所有数据条数。
条件时,效率比较高。

创建表方式以及表结构如下:
         CppSQLite3DB m_db;
         std::string sql = "create table ";
         sql += TableName_Service();
sql += "(id integer primary key autoincrement,"
                " sevname text not null,"
                " sevitem text not null,"
                " sevrecordval text not null,"
                " sevcurval text not null,"
                " date timestamp not null);";
         m_db.execDML( sql.c_str() );

目前我的思路是执行一个select*语句,然后获取结果集。
   //构造SQL
   std::string sql = "select * from ";
   sql += TableName_Service(); 
   sql += " where id not NULL;";
 
   CppSQLite3Table t = m_db.getTable( sql.c_str() );
   __int64 nSum = (__int64)t.numRows();

请问大家,还有其他比较好的方式吗?多谢大家。
[解决办法]
没有,COUNT(*),除非ID是连续没有缺失
[解决办法]
std::string sql = "select count(*) from ";

然后直接取出结果得数。

热点排行