SQLITE的增删改查的简单运用举例

//数据库的增长操做ios

-(void)addDatesql

{数据库

    NSLog(@"增长");ui

//    惟一数据库,存储数据库指针指针

    sqlite3 *db;orm

//    建立执行命令对象sqlite

    sqlite3_stmt *stmt;对象

//    根据指定文件路径打开数据库字符串

    sqlite3_open([[[NSBundle mainBundle]pathForResource:@"ios2classinfo" ofType:@"sqlite"] UTF8String], &db);string

 

//    执行预处理命令,返回一个int类型的值,返回0 则可执行命令,返回其余 不可执行,语句里面的参数 db :数据库指针  "insert into students (stuname,stupro,stunum,stupwd,stuadd,stuage) values(?,?,?,?,?,?)":sql语句,数据库的增长操做  -1:sql语句的长度,若是为负的,自动计算sql语句长度,把sql语句当成以\0结尾的字符串)。  &stmt:是sqlite3_stmt 的指针的指针。解析之后的sql语句就放在这个结构里

    int rst=sqlite3_prepare_v2(db, "insert into students (stuname,stupro,stunum,stupwd,stuadd,stuage) values(?,?,?,?,?,?)", -1, &stmt, nil);

//    绑定数据信息 注意:这里的数字1,2,3,4,5,6,表明 执行预处理命令语句中的 ?的位置

    sqlite3_bind_text(stmt, 1, "lisi", -1, nil);

    sqlite3_bind_text(stmt, 2, "jixie", -1, nil);

    sqlite3_bind_text(stmt, 3, "15899343588", -1, nil);

    sqlite3_bind_text(stmt, 4, "98836", -1, nil);

    sqlite3_bind_text(stmt, 5, "chongqing", -1, nil);

    sqlite3_bind_text(stmt, 6, "26", -1, nil);

//    返回0 能够执行命令

    if (rst==SQLITE_OK) {

//        执行完成

        if (SQLITE_DONE==sqlite3_step(stmt)) {

            NSLog(@"添加成功");

        }

    } else {

        NSLog(@"添加失败");

    }

}

//数据库的删除操做

-(void)deleteDate

{

    NSLog(@"删除");

//    建立惟一数据库,存储数据库指针

    sqlite3 *db;

//    建立执行命令

    sqlite3_stmt *stmt;

//    根据指定数据库文件路径打开数据库

    sqlite3_open([[[NSBundle mainBundle]pathForResource:@"ios2classinfo" ofType:@"sqlite"] UTF8String], &db);

 

    //    执行预处理命令,返回一个int类型的值,返回0 则可执行命令,返回其余 不可执行,语句里面的参数1 db :是个sqlite3 * 类型变量   参数2 "delete from students where stuid=1":sql语句,数据库的删除操做  参数3  -1:sql语句的长度,若是为负的,自动计算sql语句长度,把sql语句当成以\0结尾的字符串)。  参数4 &stmt:是sqlite3_stmt 的指针的指针。解析之后的sql语句就放在这个结构里

    int rst=sqlite3_prepare_v2(db, "delete from students where stuid=1", -1, &stmt, nil);

    if (rst==SQLITE_OK) {

        if (SQLITE_DONE==sqlite3_step(stmt)) {

            NSLog(@"删除成功");

        }

    } else {

        NSLog(@"删除失败");

    }

 

}

//数据库的修改操做

-(void)updateDate

{

    NSLog(@"修改");

    

    sqlite3 *db;

    sqlite3_stmt *stmt;

    sqlite3_open([[[NSBundle mainBundle]pathForResource:@"ios2classinfo" ofType:@"sqlite"] UTF8String], &db);

 

//    "update students set stuname='mmm' ,stuage='100' where stuid=4" sql语句 数据库的修改操做

    int rst = sqlite3_prepare_v2(db, "update students set stuname='mmm' ,stuage='100' where stuid=4", -1, &stmt, nil);

    if (rst==SQLITE_OK) {

        if (SQLITE_DONE==sqlite3_step(stmt)) {

            NSLog(@"修改为功");

        }

    } else {

        NSLog(@"修改失败");

    }

}

//数据库的全局查询操做

-(void)selectDate

{

    NSLog(@"查询");

    

    sqlite3 *db;

    sqlite3_stmt *stmt;

    sqlite3_open([[[NSBundle mainBundle]pathForResource:@"ios2classinfo" ofType:@"sqlite"] UTF8String], &db);

//    "select *from students" sql语句 数据库的查询操做

    int rst=sqlite3_prepare_v2(db, "select *from students", -1, &stmt, nil);

    if (rst==SQLITE_OK) {

        while (sqlite3_step(stmt)==SQLITE_ROW) {

//            循环便利数据库中的行的信息

            NSLog(@"stuid = %d",sqlite3_column_int(stmt, 0));

            NSLog(@"名字 = %@", [NSString stringWithFormat:@"%s",sqlite3_column_text(stmt, 1)]);

            NSLog(@"专业 = %@",[NSString stringWithFormat:@"%s",sqlite3_column_text(stmt, 2)]);

            NSLog(@"电话 = %@",[NSString stringWithFormat:@"%s", sqlite3_column_text(stmt, 3) ]);

            NSLog(@"密码 = %@",[NSString stringWithFormat:@"%s", sqlite3_column_text(stmt, 4) ]);

            NSLog(@" = %@",[NSString stringWithFormat:@"%s", sqlite3_column_text(stmt, 5) ]);

            NSLog(@"年龄 = %d",sqlite3_column_int(stmt, 6));

        }

    }

}

//数据库的局部查询(登陆)操做

-(void)loginPage

{

    NSLog(@"登陆");

    sqlite3 *db;

    sqlite3_stmt *stmt;

    sqlite3_open([[[NSBundle mainBundle]pathForResource:@"ios2classinfo" ofType:@"sqlite"] UTF8String], &db);

 

//    "select stuname , stupwd from students where stuname=? and stupwd=?" sql语句 数据库的局部查询操做(登陆)

    int rst = sqlite3_prepare_v2(db, "select stuname , stupwd from students where stuname=? and stupwd=?", -1, &stmt, nil);

    sqlite3_bind_text(stmt, 1, "shali", -1, nil);

    sqlite3_bind_text(stmt, 2, "520lh", -1, nil);

    if (rst==SQLITE_OK) {

        if (SQLITE_ROW==sqlite3_step(stmt)) {

            NSLog(@"登陆成功");

        }

    } else {

        NSLog(@"登陆失败");

    }

    

    

}

相关文章
相关标签/搜索