ios的sqlite3操作

原创 2013年12月01日 22:03:07

最近开发ios应用,感觉有一个地方比以前开发android方便很多。就是ios很多辅助类都可以直接调用,比如NSFileManager, NSUserDefaults之类的,不需要像android里一样需要把context传来传去,特别方便

不过在ios里操作sqlite3感觉比android要麻烦不少,API完全是C风格,调用起来比较麻烦

比如说sqlite3_exec这个API:

SQLITE_API int sqlite3_exec(
  sqlite3*,                                  /* An open database */
  const char  *sql,                           /* SQL to be evaluated */
  int (*callback) (void*,int,char**,char**),  /* Callback function */
  void  *,                                    /* 1st argument to callback */
  char  **errmsg                              /* Error msg written here */
);

第3个参数可以传一个回调函数,第4个参数是该API调用回调函数时,将会传的第一个参数,特别麻烦。而且在Objective-C里,函数又不是像js里那样是一等公民,完全不知道该怎么传一个callback给这个API,所以实际中调用往往把第3,4参数设为NULL

sqlite3_exec(database, [sqlSentence UTF8String], NULL, NULL, &errorMsg);

这样没有回调函数,自己想封装一个公共组件就特别麻烦

在文档里搜索了一番,发现以下几个API是比较关键的:

sqlite_open

sqlite_exec

sqlite_prepare_v2

sqlite_step

sqlite_column_int

sqlite_column_text

sqlite_close

示例代码网上特别多,这里就不重复贴了

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

IOS数据库操作SQLite3使用详解

  • 2013年06月06日 09:39
  • 34KB
  • 下载

iOS源生SQLite3基本操作(OC版)

  • 2016年07月28日 15:01
  • 29KB
  • 下载

ios开发系列之Sqlite3的增删改查相关操作

1,打开数据库,不存在就会创建一个sqlite3_open([[self getFilePath] UTF8String],&database)//如果返回值为`SQLITE_OK` 则打开数据库成功...

ios中SQLite3的基本操作

iOS关于sqlite3操作 iPhone中支持通过sqlite3来访问iPhone本地的数据库。 具体使用方法如下 1:添加开发包libsqlite3.0.dylib ...

iOS SQLite3数据库操作

iOS中数据持久化分为四种:属性列表、对象归档、SQLite3和Core Data,SQLite3数据库操作是一个必不或缺的技术。 SQLite3简介SQLite3数据库是移动端(iOS、Androi...
  • IT_DS
  • IT_DS
  • 2016年04月28日 16:59
  • 7907

IOS数据库操作SQLite3使用详解

iPhone中支持通过sqlite3来访问iPhone本地的数据库。 具体使用方法如下 1:添加开发包libsqlite3.0.dylib 首先是设置项目文件,在项目中添加iPhone版的sql...
  • jackljf
  • jackljf
  • 2012年09月07日 14:52
  • 527

iOS学习笔记---数据库SQLite3的基本操作并讲内容显示在tableView中

之前有做过一段时间的android,由于主要是做前端,对数据的了解就不是很深,而且觉得比较难,但是自己也清除SQLite是肯定要搞懂的,现在做IOS了,就想趁这个机会跨过这个大坑。让我没想到的是ios...

IOS 数据库操作SQLite3使用详解

具体使用方法如下 1:添加开发包libsqlite3.0.dylib 首先是设置项目文件,在项目中添加iPhone版的sqlite3的数据库的开发包,在项目下的Frameworks点击右键...

IOS线程数据篇11之Sqlite3的基本操作

(2)DML 操作 data manage language 数据库管理语言 数据插入: /*insert into t_student(id,名字,年龄,score) VALUES (1,'小明...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ios的sqlite3操作
举报原因:
原因补充:

(最多只允许输入30个字)