大家好
我正在生成一个我拥有的应用程序4 fields ( product id, product name, product price, product description)
。
现在我希望在我保存数据时自动生成产品 id ,即当我运行我的应用程序时,产品 id 的文本字段应该自动生成,当我点击保存按钮时,这个 id 应该加一并且 id应保存最后的数据。
所以请帮帮我。
大家好
我正在生成一个我拥有的应用程序4 fields ( product id, product name, product price, product description)
。
现在我希望在我保存数据时自动生成产品 id ,即当我运行我的应用程序时,产品 id 的文本字段应该自动生成,当我点击保存按钮时,这个 id 应该加一并且 id应保存最后的数据。
所以请帮帮我。
试试这个方法……
//fetch the MAX id
[self databaseOpen];
NSString *cc=[NSString stringWithFormat:@"Select MAX(ProductID) from Table"];
NSMutableArray *temp=[[NSMutableArray alloc]init];
temp=[[database executeQuery:cc]mutableCopy];
[database close];
说明我正在从数据库表中获取最大 product_id。
int Product_id;
if (temp.count!=0 && ([[temp objectAtIndex:0]valueForKey:@"MAX(ProductID)"] !=[NSNull null]))
Product_id=[[[temp objectAtIndex:0]valueForKey:@"MAX(ProductID)"]intValue]+1;
else
Product_id=1;
//fetch the MAX id
说明如果表中没有记录则Product_id =1,否则加1;
Txt_productID.text=[NSString stringwithFormat:@"%d",Product_id];
说明 在文本字段中打印Product_id
[self databaseOpen];
NSString *q=[NSString stringWithFormat:@"Insert into Table (NAme,Price,Description) values ('%@','%@','%@')",txt_name.text,txt_price.text,txt_des.text];
[database executeNonQuery:q];
[database close];
说明 将新记录保存在数据库中。
你必须看看这个教程
http://upadhyayajayiphone.blogspot.in/2012/11/insert-record-in-sqlite-table-get.html
http://www.techotopia.com/index.php/An_Example_SQLite_based_iOS_4_iPhone_Application
它包含您的所有操作。在您获取数据SELECT MAX(product_id) from TABLE_NAME
时,用于获取最后一个数据。
如果您想通过 NSUserDefaults 实现,请使用以下代码
// get total count
int count=[[NSUserDefaults standardUserDefaults]integerForKey:@"TotalIdCount"];
// on save button click increment count by one and stored it
count=count+1;
[[NSUserDefaults standardUserDefaults ] setInteger:count forKey:@"TotalIdCount"];
[[NSUserDefaults standardUserDefaults] synchronize];