Phone也支持访问本地数据库Sqlite 3。这里简单的介绍一下iPhone上Sqlite 3的使用方法。

  • 首先需要在项目中引用Sqlite 3的开发包,下面是在iPhone SDK 3.0下的目录:/Developer/Platforms/iPhoneOS.platform/Developer/SDKs /iPhoneOS3.0.sdk/usr/lib/libsqlite3.0.dylib
  • 到这里你需要事先用命令来创建Sqlite 3的数据库文件,并在其中创建自己的表等等,然后作为资源文件添加到项目,然后在程序第一次运行的时候复制到程序下的Documents或其他目录下,关于Sqlite 3的基本操作网上已经有不少文章,这里就不重复了。
在iPhone中使用Sqlite 3主要步骤如下:
  1. 首先获取iPhone上Sqlite 3的数据库文件的地址
  2. 打开Sqlite 3的数据库文件
  3. 定义SQL文
  4. 邦定执行SQL所需要的参数
  5. 执行SQL文,并获取结果
  6. 释放资源
  7. 关闭Sqlite 3数据库。
下面结合代码来示范一下。
// 首先获取iPhone上Sqlite3的数据库文件的地址  
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:];
NSString *path = [documentsDirectory stringByAppendingPathComponent:@"database_name"];
// 打开Sqlite3的数据库文件
sqlite3 *database;
sqlite3_open([path UTF8String], &database);
// 定义SQL文
sqlite3_stmt *stmt;
const char *sql = "SELECT * FROM table_name WHERE pk=? and name=?";
sqlite3_prepare_v2(database, sql, -, &stmt, NULL);
// 邦定第一个int参数
sqlite3_bind_int(stmt, , );
// 邦定第二个字符串参数
sqlite3_bind_text(stmt, , [title UTF8String], -, SQLITE_TRANSIENT);
// 执行SQL文,并获取结果
sqlite3_step(stmt);
// 释放资源
sqlite3_finalize(stmt);
// 关闭Sqlite3数据库
sqlite3_close(database);

iphone/iOS 访问本地数据库sqlite3的更多相关文章

  1. IOS开发-封装数据库sqlite3之为何选择FMDB

    为什么使用第三方轻量级框架FMDB? FMDB是用于进行数据存储的第三方的框架,它与SQLite与Core Data相比较,存在很多优势. FMDB是面向对象的,它以OC的方式封装了SQLite的C语 ...

  2. iOS FMDatabase 本地数据库的创建和几个基本使用方法

    转自:http://blog.it985.com/3677.html 使用数据库之前当然要先在网上下载FMDB的库,然后添加到自己的工程里面去.没有的请点击下面的来下载 fmdb 在FrameWork ...

  3. Qt5 开发 iOS 应用之访问 SQLite 数据库

    开发环境: macOS 10.12.1 Xcode 8.1 Qt 5.8 iPhone 6S+iOS 10.1.1   源代码: 我在 Qt 程序里指定了数据库的名称来创建数据库,在 Win10.An ...

  4. iOS开发中的4种数据持久化方式【二、数据库 SQLite3、Core Data 的运用】

                   在上文,我们介绍了ios开发中的其中2种数据持久化方式:属性列表.归档解档.本节将继续介绍另外2种iOS持久化数据的方法:数据库 SQLite3.Core Data 的运 ...

  5. uniDAC使用sqlite3作为 IOS APP 的数据库存在的问题

    前面有写,可以利用uniConnection的ForceCreateDatabase参数,强制建立sqlite本地数据库, uniConnection1.SpecificOptions.Values[ ...

  6. [iOS 开发] app无法访问本地相册,且不显示在设置 -隐私 - 照片中

    近几天在使用iOS8的Photos Framework访问本地相册时,app即不会弹出是否允许访问提示框,也无法显示在iPhone的设置-隐私-照片的访问列表中,代码如下: PHAuthorizati ...

  7. WebService访问oracle数据库本地调试

    WebService访问oracle数据库本地调试-一步一个坑 上篇文章提到我们额数据库挂了,重装了数据库,然后呢我需要在本地调试WebService,看看那些数据结构缺失,迁移到新数据库中去.踩坑之 ...

  8. Holer实现外网访问本地MySQL数据库

    外网访问内网MySQL数据库 内网主机上安装了MySQL数据库,只能在局域网内访问,怎样从公网也能访问本地MySQL数据库? 本文将介绍使用holer实现的具体步骤. 1. 准备工作 1.1 安装并启 ...

  9. [oracle] DBLINK +同义词,实现本地数据库访问另一台机器的数据库

    起因:订单表原来在90库上,后各种原因移到了40库上,需访问40库上的订单表.采用DBLINK+同义词方法: -- 1 在90机器上用GPSV4登录PLSQL,创建DBLINK,从本地数据库,连接到远 ...

随机推荐

  1. leetcode 【 Two Sum 】python 实现

    题目: Given an array of integers, find two numbers such that they add up to a specific target number. ...

  2. AppDOMain(摘录)

    AppDomain是CLR的运行单元,它可以加载Assembly.创建对象以及执行程序. AppDomain是CLR实现 代码隔离 的基本机制. 每一个AppDomain可以单独运行.停止:每个App ...

  3. POJ-1087 二分图匹配,最大流。

                                                      A Plug for UNIX 题意很迷,不过很水. 题意:一个房间有m个插座,每个插座有一个型号, ...

  4. 【bzoj2186】[Sdoi2008]沙拉公主的困惑 欧拉函数

    题目描述 大富翁国因为通货膨胀,以及假钞泛滥,政府决定推出一项新的政策:现有钞票编号范围为1到N的阶乘,但是,政府只发行编号与M!互质的钞票.房地产第一大户沙拉公主决定预测一下大富翁国现在所有真钞票的 ...

  5. 一个 Observation

    $n$ 个小球分布在一个圆上,小球的颜色或黑或白.顺时针(或逆时针)遍历这 $n$ 个小球,记录下相邻两小球的颜色,得到 $n$ 个有序颜色对.我们有,(黑,白)和(白,黑)的数目一定相等(可能都是 ...

  6. SPOJ COT2 - Count on a tree II(LCA+离散化+树上莫队)

    COT2 - Count on a tree II #tree You are given a tree with N nodes. The tree nodes are numbered from  ...

  7. java简易DVD影片管理系统—面向对象

    public class DvdSet { String name [] =new String[15]; // DVD电影名称 String date [] =new String[15]; //D ...

  8. MyEclipse生成get/set注释

    我的外网链接 http://yezi-0016.iteye.com/blog/2290421

  9. EPPlus(SQL导成Excel)

    使用Epplus方法把sql数据库中表的数据导出到excel中去: 需要使用EPPlus.dll引用. using System.IO; using OfficeOpenXml; public sta ...

  10. Docker分层原理与内部结构

    转自:1 :   https://www.csdn.net/article/2015-08-21/2825511 2:    http://blog.51cto.com/wzlinux/2044797 ...