一、引入工具包

  引入工具包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);}}}

作者:杰瑞教育
出处:http://www.cnblogs.com/jerehedu/ 
本文版权归烟台杰瑞教育科技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

转载于:https://www.cnblogs.com/jerehedu/p/4328927.html

IOS开发之数据sqlite使用相关推荐

  1. IOS开发数据库篇—SQLite模糊查询

    IOS开发数据库篇-SQLite模糊查询 一.示例 说明:本文简单示例了SQLite的模糊查询 1.新建一个继承自NSObject的模型 该类中的代码: 1 // 2 // YYPerson.h 3 ...

  2. iOS开发之数据存储

    概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation框架的文章中提到归档.plist文件存储, ...

  3. iOS开发系列--数据存取

    原文地址为: iOS开发系列--数据存取 概览 在iOS开发中数据存储的方式可以归纳为两类:一类是存储为文件,另一类是存储到数据库.例如前面IOS开发系列-Objective-C之Foundation ...

  4. iOS开发之数据存取

    本文转载至 http://www.cocoachina.com/ios/20141111/10190.html 2014-11-11 13:43 编辑:suiling 分类:iOS开发 来源:崔江涛( ...

  5. iOS开发网络——数据缓存

    一.关于同一个URL的多次请求 有时候,对同一个URL请求多次,返回的数据可能都是一样的,比如服务器上的某张图片,无论下载多少次,返回的数据都是一样的. 上面的情况会造成以下问题 (1)用户流量的浪费 ...

  6. iOS开发网络数据之AFNetworking使用

    如何选择AFNetworking版本 首先得下载AFNetworking库文件,下载时得首先弄清楚,你将要开发的软件兼容的最低版本是多少.AFNetworking 2.0或者之后的版本需要xcode5 ...

  7. iOS开发之数据存储之Preference(偏好设置)

    1.概述 很多iOS应用都支持偏好设置,比如保存用户名.密码.字体大小等设置,iOS提供了一套标准的解决方案来为应用加入偏好设置功能. 每个应用都有个NSUserDefaults实例,通过它来存取偏好 ...

  8. IOS开发数据库篇--- sqlite常用语句

    /*简单约束*/ CREATE TABLE IF NOT EXISTS t_student(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age I ...

  9. ios开发 json数据文件的存取

    将Json存进本地文件夹 NSArray *paths=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMas ...

最新文章

  1. python OOP (1)
  2. PHP的array_column
  3. python ascii转utf8_ascii 转换为 utf-8
  4. 计算机技能大赛图形试题,图形图像处理技能大赛竞赛试题试卷.doc
  5. 操作元素-改变元素内容
  6. tomcat内存溢出的解决方法(java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError:)...
  7. 解决标签回车后产生的空格2
  8. oracle --union和union all
  9. 电商项目数据库表的学习及数据库表结构设计
  10. 搭建sql注入平台及DVWA漏洞环境
  11. 内存管理基本原理及非ARC环境使用小心得
  12. 【逻辑训练】来自可汗学院的有趣逻辑问题
  13. iOS 通过数字拼音快速搜索股票
  14. 《啊哈!算法》第一章 - 第三节 - 快速排序(Java实现)
  15. PHP反序列化字符串逃逸
  16. CSDN KaTeX 公式之等号对齐
  17. c语言strstr的使用及模拟实现strstr函数
  18. JAVA - 变量作用域
  19. 超融合详细对比:市面各主流超融合产品及厂商优劣势解密
  20. 原型模式使用手册,如何正确使用原型模式

热门文章

  1. Swift - AppDelegate.swift类中默认方法的介绍
  2. Linux练习(显示环境变量)
  3. Babylon.js 3.3发布:更强大的粒子系统和WebVR支持
  4. Python_赋值和深浅copy
  5. 欧盟剑指科技巨头,意欲上调税款
  6. angularJs 之deferred
  7. 容器网络Calico进阶实践 | 褚向阳
  8. 【GoLang】深入理解slice len cap什么算法? 参数传递有啥蹊跷?
  9. Beaglebone Black教程BeagleBone Black安装最新系统映像
  10. Connection cannot be null when 'hibernate.dialect'