Bootstrap

sqlite3删除一行后重新对主键排序

1.查找需要删除的行的主键id(id_no)

sprintf(sql, "select id from blacklist where meter_id = \"%s\"", meterid.c_str());

2.删除该行数据

sprintf(sql, "delete from blacklist where meter_id = \"%s\"", meterid.c_str());

3.大于id_no的数据主键id都减一

sprintf(sql, "update blacklist set 'id'=(id-1) where id > %d",id_no);

4.重置该表格的自动排序序号

sprintf(sql, "delete from sqlite_sequence where name = 'blacklist'");
;