2011-05-20 170 views
1

我在sqlite中有1个表,我将值插入到表中。当插入行id大于100时,我想删除第一个插入的记录并在第100个位置插入新记录,我删除第1个记录但是第2个记录在第2个位置,但是我想在删除第一行后重新排列记录。我该怎么做?如何删除sqlite中的第一行后重新排列表?

我的表名是:产品

我的表包含产品名称,productId参数,...

我的数据库名是:HalalGauge.sqlite

回答

0

将您的新行添加为productId 101. 从productId删除productId = 1 UPDATE P RODUCTS set productId =(productId-1)

我不会称这是一个很好的解决方案,因为它更新每一行,但如果你只有100行,它会没事的。

+0

产品ID在我的应用程序给随机值我可以使用rowid而不是? – Chinna 2011-05-20 05:32:45

+0

是的。 rowid被自动赋值为下一个整数值 – skorulis 2011-05-20 05:35:58

+0

请告诉我语法..基于RowId .. – Chinna 2011-05-20 05:37:19

0

你需要使用这个方法重新排列

- (void)tableView:(UITableView *)tableView 
     commitEditingStyle:(UITableViewCellEditingStyle)editingStyle 
     forRowAtIndexPath:(NSIndexPath *)indexPath; 

- (void)tableView:(UITableView *)tableView 
     moveRowAtIndexPath:(NSIndexPath *)fromIndexPath 
     toIndexPath:(NSIndexPath *)toIndexPath;