| 注册
请输入搜索内容

热门搜索

Java Linux MySQL PHP JavaScript Hibernate jQuery Nginx
ybny
9年前发布

IOS开发之数据SQLite使用

一、引入工具包

引入工具包libsqlite3.dylib,该工具包为C语言工具包。

二、代码操作数据库

1、创建并且链接数据库 

- (void) _connectDB{         //1>获取沙盒路径作为数据库创建时候的初始化路径      NSString * path=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];      path=[path stringByAppendingPathComponent:@"new.sqlite"];      NSLog(@"%@",path);        //2>如果存在则打开当前链接,如果不存在则创建      if(SQLITE_OK==sqlite3_open(path.UTF8String, &sqlite)){          NSLog(@"数据库创建成功!");      }else {          NSLog(@"数据库创建失败!");      }        }

2、操作数据库 

/**   *  创建表   */    - (void) _createTable{        NSString *create=@" create table if not exists t_Person (id integer primary key autoincrement,name text,age integer,tel text)";      [self _execSql:create andTip:@"创建表操作"];        }  /**   *  插入数据操作   *   *  @param name 姓名   *  @param age  年龄   *  @param tel  电话   */    - (void) _insertName:(NSString *) name andAge:(int )age andTel:(NSString *) tel{            NSString * insert=[NSString stringWithFormat:@" insert into  t_Person(name,age,tel) values('%@',%d,'%@')",name,age,tel];      [self _execSql:insert andTip:@"插入操作"];        }    /**   *  执行数据库操作   *   *  @param sql 要执行的sql   *  @param tip 要执行的操作标题   */    - (void) _execSql:(NSString *) sql andTip:(NSString *) tip{        char * result;      if(SQLITE_OK==sqlite3_exec(sqlite, sql.UTF8String, NULL, NULL, &result)){          NSLog(@"%@成功!",tip);      }else{          NSLog(@"%@失败!",tip);      }    }


3、查询数据库 

/**   *  读取数据   */    - (void)_readData{      //1> 定义sql语句      NSString * sql=@"select id,name,age,tel from t_person ";            sqlite3_stmt * stmt=NULL;      //2> 检查语法的正确性      if(SQLITE_OK==sqlite3_prepare_v2(sqlite, sql.UTF8String, -1, &stmt, NULL)){                //3> 循环结果集取数据          while(sqlite3_step(stmt)==SQLITE_ROW){              //4>注意:取出来数据可以封装到集合中备用              int ID=sqlite3_column_int(stmt,0);              const unsigned char *name=sqlite3_column_text(stmt, 1);              int age=sqlite3_column_int(stmt, 2);              const unsigned char *tel=sqlite3_column_text(stmt, 3);              NSString * names=[NSString stringWithUTF8String:(const char *)name];              NSString * tels=[NSString stringWithUTF8String:(const char *)tel];              NSLog(@"%d,%@,%d,%@",ID,names,age,tels);                      }            }    }


 

 本文由用户 ybny 自行上传分享,仅供网友学习交流。所有权归原作者,若您的权利被侵害,请联系管理员。
 转载本站原创文章,请注明出处,并保留原始链接、图片水印。
 本站是一个以用户分享为主的开源技术平台,欢迎各类分享!
 本文地址:https://www.open-open.com/lib/view/open1429847286323.html
SQLite iOS开发 移动开发