Case study of adding, deleting, modifying, and querying IOS Sqlite user interface
1. case Description: The SQLite operation is encapsulated to convert the operation on the data table into an object, and the user table is added, deleted, modified, and queried through the UI, shows.
2. project directory
The UserModel class is the user object model and corresponds to the fields in the database table. The BaseDB class is a simple encapsulation of sqlite and abstracts three methods for database operations. For details, refer to examples.
//// UserDB. h // SqliteDemo /// Created by Zhao Chao on 14-8-27. // Copyright (c) 2014 Zhao Chao. all rights reserved. // # import "BaseDB. h "# import" UserModel. h "@ interface UserDB: BaseDB {}// Singleton + (id) Creating UserDB; // create the User table-(void) creatTableWithDataBaseName :( NSString *) dbName; // Add a UserModel-(BOOL) addUser :( UserModel *) userModel dbName :( NSString *) dbName; // modify a UserModel-(BOOL) updateUser :( UserModel *) userModel dbName :( NSString *) dbName; // query all-(NSArray *) findAllUser :( NSString *) dbName; // delete an object-(BOOL) deleteUser :( UserModel *) userModel dbName :( NSString *) dbName; @ end
UserDB. m
//// UserDB. m // SqliteDemo /// Created by Zhao Chao on 14-8-27. // Copyright (c) 2014 Zhao Chao. all rights reserved. // # import "UserDB. h "@ implementation UserDBstatic UserDB * db; + (id) login UserDB {if (db = nil) {db = [[UserDB alloc] init];} return db ;} -(void) creatTableWithDataBaseName :( NSString *) dbName {NSString * SQL = @ "create table user (userName text primary key, passWord text, userEmail text)"; [self createTab Le: SQL dataBaseName: dbName];}-(BOOL) deleteUser :( UserModel *) userModel dbName :( NSString *) dbName {NSString * SQL = @ "delete from user where userName =? "; NSArray * params = @ [userModel. userName]; return [self execSql: SQL parmas: params dataBaseName: dbName];}-(BOOL) addUser :( UserModel *) userModel dbName :( NSString *) dbName {NSString * SQL = @ "insert into user (userName, passWord, userEmail) values (?,?,?) "; NSArray * params = @ [userModel. userName, userModel. passWord, userModel. userEmail]; return [self execSql: SQL parmas: params dataBaseName: dbName];}-(NSArray *) findAllUser :( NSString *) dbName {NSString * SQL = @ "select userName, passWord, userEmail from user "; NSArray * result = [self selectSql: SQL parmas: nil dataBaseName: dbName]; NSMutableArray * users = [NSMutableArray array]; for (NSDictionary * dic in result ){ UserModel * user = [[UserModel alloc] init]; user. userName = [dic objectForKey: @ "userName"]; user. passWord = [dic objectForKey: @ "passWord"]; user. userEmail = [dic objectForKey: @ "userEmail"]; [users addObject: user];} return users ;}- (BOOL) updateUser :( UserModel *) userModel dbName :( NSString *) dbName {NSString * SQL = @ "update user set userName = ?, PassWord = ?, UserEmail =? Where userName =? "; NSArray * params = @ [userModel. userName, userModel. passWord, userModel. userEmail, userModel. userName]; return [self execSql: SQL parmas: params dataBaseName: dbName];} @ end
MainViewController is the complete project code download http://download.csdn.net/detail/whzhaochao/7829829 for displaying all users by users AddViewController for adding and modifying user interfaces