fmdb 的使用:
#获取path:
NSArray *dbpath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) FristObject] stringByAppendingPathComponent: @"mydatabase.db"];
//creat db
FMDataBase *db = [FMDatabase databaseWithPath:dbPath] ;
//creat table
[db executeUpdate:@"CREATE TABLE PersonList if no exists(Name text, Age integer, Sex integer, Phone text, Address text, Photo blob)"];
// creat into
[db executeUpdate:@"INSERT INTO PersonList (Name, Age, Sex, Phone, Address, Photo) VALUES (?,?,?,?,?,?)",@"Jone", [NSNumber numberWithInt:20], [NSNumber numberWithInt:0], @“091234567”, @“Taiwan”, [NSData dataWithContentsOfFile: filepath]];
//update
[db executeUpdate:@"UPDATE PersonList SET Age = ? WHERE Name = ?",[NSNumber numberWithInt:30],@“John”];
//search
FMResultSet *rs = [db executeQuery:@"SELECT Name, Age, FROM PersonList"];
while([rs next]) {
NSString *name = [rs stringForColumn:@"Name"];
}
[db executeUpdate:@"DROP TABLE IF EXISTS PersonList;"];
[db executeUpdateWithForamt:@"insert into table(name,age) values(%@,%d);"_name,_age]
//多线程
NSString *path=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];
path=[path stringByAppendingPathComponent:@"test.sqlite"];
FMDatabaseQueue * queue=[FMDatabaseQueue databaseQueueWithPath:path];
[queue inDatabase:^(FMDatabase *db) {
NSString *str = @"create table if not exists t_book(id integer,name varchar)";
BOOL c1= [db executeUpdate:create];
}]
[queue inDatabase:^(FMDatabase *db) {
NSString * insertSql=@"insert into t_book(id,name) values(?,?)";
//插入语句1
bool inflag=[db executeUpdate:insertSql,@(2),@"admin"];
if(inflag){
NSLog(@"插入成功");
}
}];
[queue inDatabase:^(FMDatabase *db) {
FMResultSet * data=[db executeQuery:@" select * from t_book "];
while (data.next) {
int ids=[data intForColumn:@"id"];
NSString *name=[data stringForColumn:@"name"];
}
}];