美文网首页
IOS FMDB的简单实用

IOS FMDB的简单实用

作者: 梦之志 | 来源:发表于2016-10-18 09:20 被阅读0次

    对数据库简单的操作: 增删改查

    1、确定存储的路径,并创建文件

      NSString *doc=[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
        NSString * fileName=[doc stringByAppendingPathComponent:@"student1.sqlite"];
    
    1. 打开文件,并创建表
     db = [FMDatabase databaseWithPath:fileName];
    
            if ([db open]) {
                
                NSString * sqlCreadTable = [NSString stringWithFormat:@"CREATE TABLE IF NOT EXISTS '%@'('%@' INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,'%@'TEXT,'%@' INTEGER,'%@'TEXT)",TABLENAME,ID,NAME,AGE,ADDRESS];
                
                BOOL res = [db executeUpdate:sqlCreadTable];
                
                if (!res) {
                    
                    NSLog(@"error when creating db table");
                    
                }else{
                    
                    NSLog(@"success to creating db table");
                    
                }
    

    3.增: 往表中添加数据

    #pragma mark - 添加数据
    +(void)AddDate{
    
        if ([db open]) {
            
            //单个数据插入
            NSString * insertSql1 = [NSString stringWithFormat:@"INSERT INTO '%@'('%@','%@','%@')VALUES('%@','%@','%@')",TABLENAME,NAME,AGE,ADDRESS,@"张三",@"14",@"晋安"];
            
           BOOL res = [db executeUpdate:insertSql1];
            
            NSString * insertSql2 = [NSString stringWithFormat:@"INSERT INTO '%@'('%@','%@','%@')VALUES('%@','%@','%@')",TABLENAME,NAME,AGE,ADDRESS,@"李四",@"19",@"南昌"];
            
           BOOL res2 = [db executeUpdate:insertSql2];
            
            if (!res && !res2) {
                
                NSLog(@"error when insrt db table");
                
            }else{
            
                NSLog(@"success to insert db table");
            
            }
            
            [db close];
            
        }
    
    }
    

    4.改: 修改数据库中的数据

    #pragma mark - 修改数据
    +(void)ChageDate{
    
        if ([db open]) {
            
            NSString * updateSql = [NSString stringWithFormat:@"update '%@' set '%@' = '%@' where '%@' = '%@'",TABLENAME,AGE,@"15",AGE,@"13"];
            
            BOOL res = [db executeUpdate:updateSql];
            
            if (!res) {
                
                NSLog(@"error when update db table");
                
            } else {
                
                NSLog(@"success to update db table");
                
            }
            
            [db close];
            
        }
    
    }
    

    5.查: 查询数据

    #pragma mark - 查询数据
    +(void)SearchDate{
    
        if ([db open]) {
            
            NSString * sql = [NSString stringWithFormat:@"select * from %@",TABLENAME];
            
            FMResultSet * rs = [db executeQuery:sql];
            
            while ([rs next]) {
                
                int Id = [rs intForColumn:ID];
                
                NSString * name = [rs stringForColumn:NAME];
                
                NSString * age = [rs stringForColumn:AGE];
                
                NSString * address = [rs stringForColumn:ADDRESS];
    
                NSLog(@"id = %d, name = %@,age = %@,address = %@",Id,name,age,address);
                
            }
            
            [db close];
           
        }
    
    }
    
    1. 删: 删除数据
    #pragma mark - 删除数据
    +(void)DeleteDate{
    
        if ([db open]) {
            
            NSString * deletesql = [NSString stringWithFormat:@"delete from %@ where %@ = '%@'",TABLENAME,NAME,@"张三"];
            
           BOOL res = [db executeUpdate:deletesql];
            
            if (!res) {
                
                NSLog(@"error when delete db table");
                
            }else {
                
                NSLog(@"success to delete db table");
                
            }
            
            [db close];
            
        }
    
    }
    

    相关文章

      网友评论

          本文标题:IOS FMDB的简单实用

          本文链接:https://www.haomeiwen.com/subject/iigzyttx.html