zoukankan      html  css  js  c++  java
  • IOS SQLITE 数据库操作

        NSArray * array = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

        NSString * docPath = [array objectAtIndex:0];

        NSString * dbPath = [docPath stringByAppendingPathComponent:@"test_db"];

        

        NSLog(@"dbPath:%@",dbPath);

        

        sqlite3 * database;

        

        if( sqlite3_open([dbPath UTF8String], &database ) == SQLITE_OK)

        {

            NSLog(@"open success");

        }

        else

        {

            NSLog(@"open falied");

        }

        

        

        char * errorMsg;

        NSString * sql = @"create table if not exists mytable( myid int not null primary key , age int , name varchar(255))";

        

        if( sqlite3_exec(database, [sql UTF8String], NULL, NULL, &errorMsg) == SQLITE_OK )

        {

            NSLog(@"create table success");

        }

        else

        {

            NSLog(@"create talbe falied:%s",errorMsg);

            sqlite3_free(errorMsg);

        }

        

        

        

        sql = @"insert into mytable(myid , age , name )values(100,18,'rollrock')";

        

        if( sqlite3_exec(database, [sql UTF8String], NULL, NULL, &errorMsg) == SQLITE_OK )

        {

            NSLog(@"insert success");

        }

        else

        {

            NSLog(@"insert falied:%s",errorMsg);

            sqlite3_free(errorMsg);

        }

        

        sqlite3_stmt * stmt;

        sql = @"update mytable set name='rollrock&aaa' where myId = 100";

        

        if( sqlite3_prepare_v2(database, [sql UTF8String], -1,&stmt , NULL ) == SQLITE_OK )

        {

      //一定要执行这句话才能生效

            if( sqlite3_step(stmt) == SQLITE_DONE)

            {

                NSLog(@"update success");

            }

            

        }

        else

        {

            NSLog(@"update false");

        }

        

        

        

        sql = @"select * from mytable";

        

        if( sqlite3_prepare_v2(database, [sql UTF8String], -1, &stmt, nil) == SQLITE_OK )

        {

            NSLog(@"select success");

            

      //

            while( sqlite3_step(stmt) == SQLITE_ROW)

            {

                int myId = sqlite3_column_int(stmt, 0);

                char * name = sqlite3_column_text(stmt, 2);

                int age = sqlite3_column_int(stmt, 1);

                

                NSLog(@"myId:%d name:%s age:%d",myId,name,age);

            }

        }

        else

        {

            NSLog(@"select falied:%s",errorMsg);

            sqlite3_free(errorMsg);

        }

  • 相关阅读:
    Gitlab的安装汉化及问题解决
    Python-Day15 JavaScript/DOM
    Python-Day12 Python mysql and ORM
    Python-Day11 RabbitMQ/redis
    Python-Day9 Paramiko模块/进程/线程/RabbitMQ队列
    Python-Day7 面向对象进阶/异常处理/Socket
    使用CryptoJS解决微信小程序用户信息解密
    How to: Configure an Azure SQL Database firewall using the Azure Portal
    iOS 开发: 自定义相册, 保存多张图片到自定义相册中
    解决iOS8.0以上系统下无法通过代码创建被删除过的同名相册 ( iOS 8 Photos framework: Create a albums with iOS8 )
  • 原文地址:https://www.cnblogs.com/rollrock/p/3641787.html
Copyright © 2011-2022 走看看