SQLite最新的版本是3.0,使用之前应该先导入libsqlite3.0.dylib

  1.导入流程

    

   

  2.iOS中操作数据库的流程

    打开数据库

    准备SQL数据库

    执行SQL数据库

    语句完结

    关闭数据库

  3.SQLite()使用的是C的函数接口

    

  4.创建数据库

  

-(void)createSQL{

    NSFileManager *manager = [NSFileManager defaultManager];

    if ([manager fileExistsAtPath:kDataBaseFilePath]) {
NSLog(@"数据库不存在");
return;
}
NSLog(@"%@",kDataBaseFilePath);
[manager createFileAtPath:kDataBaseFilePath contents:nil attributes:nil]; sqlite3 *sql =NULL;
int openDbResult = sqlite3_open([kDataBaseFilePath UTF8String], &sql); if (openDbResult==SQLITE_OK) {
NSLog(@"数据库打开成功");
}
else{ NSLog(@"打开不成功"); [manager removeItemAtPath:kDataBaseFilePath error:nil];
return;
} NSString *sqlString = @"CREATE TABLE user(id integer PRIMARY KEY AUTOINCREMENT, username text NOT NULL UNIQUE, password text NOT NULL);"; char *errmsg = NULL;
int exeResult = sqlite3_exec(sql, [sqlString UTF8String], NULL, NULL, &errmsg); if (exeResult == SQLITE_OK) {
NSLog(@"表格成功被创建"); }
else{ NSLog(@"失败");
sqlite3_close(sql);
[manager removeItemAtPath:kDataBaseFilePath error:nil];
return;
}
sqlite3_close(sql); }
  5.数据库的插入数据库

   

-(void)createSQL{

    NSFileManager *manager = [NSFileManager defaultManager];

    if ([manager fileExistsAtPath:kDataBaseFilePath]) {
NSLog(@"数据库不存在");
return;
}
NSLog(@"%@",kDataBaseFilePath);
[manager createFileAtPath:kDataBaseFilePath contents:nil attributes:nil]; sqlite3 *sql =NULL;
int openDbResult = sqlite3_open([kDataBaseFilePath UTF8String], &sql); if (openDbResult==SQLITE_OK) {
NSLog(@"数据库打开成功");
}
else{ NSLog(@"打开不成功"); [manager removeItemAtPath:kDataBaseFilePath error:nil];
return;
} NSString *sqlString = @"CREATE TABLE user(id integer PRIMARY KEY AUTOINCREMENT, username text NOT NULL UNIQUE, password text NOT NULL);"; char *errmsg = NULL;
int exeResult = sqlite3_exec(sql, [sqlString UTF8String], NULL, NULL, &errmsg); if (exeResult == SQLITE_OK) {
NSLog(@"表格成功被创建"); }
else{ NSLog(@"失败");
sqlite3_close(sql);
[manager removeItemAtPath:kDataBaseFilePath error:nil];
return;
}
sqlite3_close(sql); }

  

iOS数据库操作流程的更多相关文章

  1. iOS 数据库操作(使用FMDB)

    iOS 数据库操作(使用FMDB)   iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.Plausibl ...

  2. [iOS]数据库第三方框架FMDB详细讲解

    [iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...

  3. IOS数据库操作SQLite3使用详解(转)

    iPhone中支持通过sqlite3来访问iPhone本地的数据库.具体使用方法如下1:添加开发包libsqlite3.0.dylib首先是设置项目文件,在项目中添加iPhone版的sqlite3的数 ...

  4. IOS数据库FMDB增、删、改、查的使用【原创】

    http://blog.it985.com/13588.html IOS数据库FMDB增.删.改.查的使用[原创] FMDB是一个XCODE的中一个轻量级的数据库,用于将网络资源存储在本地.所以,FM ...

  5. iOS数据库操作之coredata详细操作步骤

    CHENYILONG Blog iOS数据库操作之coredata详细操作步骤 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/ ...

  6. 分享一段ios数据库代码,包括对表的创建、升级、增删查改

    分享一段ios数据库代码.包括创建.升级.增删查改. 里面的那些类不必细究,主要是数据库的代码100%可用. 数据库升级部分,使用switch,没有break,低版本一次向高版本修改. // DB.h ...

  7. ios数据库

    1. ios数据库管理软件 ios使用的数据库是sqlite 管理软件有2种, 我只记得一种, 名字叫做 MesaSQLite 2. sqlite数据库 2.1.修改表结构 ①:更改字段类型长度 AL ...

  8. iOS数据库离线缓存思路和网络层封装

    一直想总结一下关于iOS的离线数据缓存的方面的问题,然后近期也简单的对AFN进行了再次封装.全部想把这两个结合起来写一下.数据展示型的页面做离线缓存能够有更好的用户体验,用户在离线环境下仍然能够获取一 ...

  9. iOS 数据库sqlite3.0操作--超简单--看我就够啦

    iOS客户端数据存储的方式有很多,下面主要是介绍苹果自带的sqlite3.0的使用方法. 首先导入sqlite3.0的框架.然后导入头文件#import <sqlite3.h>就行了 下面 ...

随机推荐

  1. Lotus分析

    一 Lotus的任务 Lotus是一个消息通知服务,topic和subscription是多对多的关系.后面我加了一个发送自定义邮件和自定义短信的功能. 产品里面有个监控报警和通知列表.监控报警里创建 ...

  2. 【原创】OllyDBG 入门系列(一)-认识OllyDBG

     ****** http://blog.fishc.com/645.html   标 题: [原创]OllyDBG 入门系列(一)-认识OllyDBG作 者: CCDebuger时 间: 2006-0 ...

  3. iOS开发——网络编程OC篇&Socket编程

    Socket编程 一.网络各个协议:TCP/IP.SOCKET.HTTP等 网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 其中物理层.数据链路层和网络层通常被称作 ...

  4. careercup-中等难度 17.8

    17.8 给定一个整数数组(有正数和负数),找出总和最大的连续序列,并返回总和. 解法: 就是求连续子序列的和最大,不过存在一个问题: 假设整个数组都是负数,怎么样才是正确的行为呢?看看这个简单的数组 ...

  5. careercup-C和C++ 13.5

    13.5 谈谈C语言关键字”volatile”的意义(或重要性)? 解答 关键字volatile的作用是指示编译器,即使代码不对变量做任何改动,该变量的值仍可能被外界修改.操作系统.硬件或其他线程都可 ...

  6. android离线安装adt

    打开Eclipse, 在菜单栏上选择help->Install New SoftWare 出现如下界面: 点击 Add按钮,出现如下界面 在Name这而随意输入一个名字:ADT15:点击打开Ar ...

  7. MySQL之事务隔离级别--转载

    转自:http://793404905.blog.51cto.com/6179428/1615550 本文通过实例展示MySQL事务的四种隔离级别. 1 概念阐述 1)Read Uncommitted ...

  8. C# 之 Math取整

    主要用到 System 命名空间下的一个数据类 Math ,调用他的方法. C#取整函数使用详解: 1.Math.Round是"就近舍入",当要舍入的是5时与"四舍五入& ...

  9. ie7兼容性 绝对定位元素之间的遮盖问题

    今天在调试ie7兼容性问题的时候,遇到了一个棘手的问题,解决了一天无果,晚上看到一位大神写的心得,最终解决. 网址:http://www.jb51.net/css/148606.html#commen ...

  10. MATLAB中如何使用遗传算法

    matlab有遗传算法工具箱. 核心函数:   (1)function [pop]=initializega(num,bounds,eevalFN,eevalOps,options)--初始种群的生成 ...