作者:lijunlin66_8460dd | 来源:互联网 | 2023-01-08 17:15
ImworkingonXcode6,Objective-C.ImtryingtouseSQLitetostoremydatas.ButIhaveaproble
I'm working on Xcode 6, Objective-C. I'm trying to use SQLite to store my datas. But I have a problem, the storage is not persitant. When I start my program, I have this in my dataBase file :
我正在研究Xcode 6,Objective-C。我正在尝试使用SQLite来存储我的数据。但我有一个问题,存储不是持久的。当我启动我的程序时,我在我的dataBase文件中有这个:
id = 0; mOney= 1000000; name = xx;
id = 0;钱= 1000000; name = xx;
id = 1; mOney= 500200; name = bb;
id = 1;钱= 500200; name = bb;
Now when I insert a new data in the table and I check I have 3 rows. But when I close my app and I reopen it I still has 2 rows.
现在,当我在表中插入新数据时,我检查我有3行。但当我关闭我的应用程序并重新打开它时,我仍有2行。
Here is some code, this is my init function :
这是一些代码,这是我的init函数:
- (id)init {
self = [super init];
if (self){
[self CopyDbToDocumentsFolder];
if (sqlite3_open([[[self GetDocumentDirectory] stringByAppendingPathComponent:@"Bank.sqlite"] UTF8String],
&_database) != SQLITE_OK) {
NSLog(@"Failed to open database!");
}
}
return self;
}
And here is my insert function :
这是我的插入功能:
-(void)insert:(NSString *)cols withValues:(NSString *)values into:(NSString *) table{
NSString *query = [NSString stringWithFormat:@"INSERT INTO %@ (%@) VALUES(%@)", table, cols, values];
sqlite3_stmt *statement;
if (sqlite3_prepare_v2(_database, [query UTF8String], -1, &statement, nil) == SQLITE_OK) {
while (sqlite3_step(statement) == SQLITE_DONE);
sqlite3_finalize(statement);
}else{
NSLog(@"Failed to delete!");
sqlite3_errmsg(_database);
}
}
Thanks for any help.
谢谢你的帮助。
1 个解决方案