iOS数据库操作流程
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数据库操作流程的更多相关文章
- iOS 数据库操作(使用FMDB)
iOS 数据库操作(使用FMDB) iOS中原生的SQLite API在使用上相当不友好,在使用时,非常不便.于是,就出现了一系列将SQLite API进行封装的库,例如FMDB.Plausibl ...
- [iOS]数据库第三方框架FMDB详细讲解
[iOS]数据库第三方框架FMDB详细讲解 初识FMDB iOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦.于是,就出现了一系列将SQLite API进行封 ...
- IOS数据库操作SQLite3使用详解(转)
iPhone中支持通过sqlite3来访问iPhone本地的数据库.具体使用方法如下1:添加开发包libsqlite3.0.dylib首先是设置项目文件,在项目中添加iPhone版的sqlite3的数 ...
- IOS数据库FMDB增、删、改、查的使用【原创】
http://blog.it985.com/13588.html IOS数据库FMDB增.删.改.查的使用[原创] FMDB是一个XCODE的中一个轻量级的数据库,用于将网络资源存储在本地.所以,FM ...
- iOS数据库操作之coredata详细操作步骤
CHENYILONG Blog iOS数据库操作之coredata详细操作步骤 技术博客http://www.cnblogs.com/ChenYilong/ 新浪微博http://weibo.com/ ...
- 分享一段ios数据库代码,包括对表的创建、升级、增删查改
分享一段ios数据库代码.包括创建.升级.增删查改. 里面的那些类不必细究,主要是数据库的代码100%可用. 数据库升级部分,使用switch,没有break,低版本一次向高版本修改. // DB.h ...
- ios数据库
1. ios数据库管理软件 ios使用的数据库是sqlite 管理软件有2种, 我只记得一种, 名字叫做 MesaSQLite 2. sqlite数据库 2.1.修改表结构 ①:更改字段类型长度 AL ...
- iOS数据库离线缓存思路和网络层封装
一直想总结一下关于iOS的离线数据缓存的方面的问题,然后近期也简单的对AFN进行了再次封装.全部想把这两个结合起来写一下.数据展示型的页面做离线缓存能够有更好的用户体验,用户在离线环境下仍然能够获取一 ...
- iOS 数据库sqlite3.0操作--超简单--看我就够啦
iOS客户端数据存储的方式有很多,下面主要是介绍苹果自带的sqlite3.0的使用方法. 首先导入sqlite3.0的框架.然后导入头文件#import <sqlite3.h>就行了 下面 ...
随机推荐
- JS 添加千分位,测试可以使用
JS 添加千分位,测试可以使用 <script language="javascript" type="text/javascript">funct ...
- iOS完美的网络状态判断工具
大多数App都严重依赖于网络,一款用户体验良好的的app是必须要考虑网络状态变化的.iOSSinger下一般使用Reachability这个类来检测网络的变化. Reachability 这个是苹果开 ...
- Git链接到自己的Github(2)进阶使用
接着上一篇的,从github clone下代码. 1.先查看当前开发分支 $ cat .git/HEAD ref: refs/heads/master 这里的master是默认分支. 2.查看当前状态 ...
- 信号之kill和raise函数
kill函数将信号发送给进程或进程组.raise函数则允许进程向自身发送信号. #include <signal.h> int kill(pid_t pid, int signo); in ...
- CentOS中操作
在Centos中yum安装和卸载软件的使用方法安装方法安装一个软件时 :yum -y install httpd安装多个相类似的软件时:yum -y install httpd*安装多个非类似软件时 ...
- 【转】cocos2d-x 2.0版本 自适应屏幕分辨率
http://codingnow.cn/cocos2d-x/975.html 我使用的版本是cocos2d-2.0-x-2.0.4,cocos2dx-2.0版本对多分辨率适配提供了很好的支持,使用起来 ...
- spring+ibatis环境搭建
简单的spring+ibatis入门实例:ibatis是一种半自动化的持久层框架,它介于JDBC和hibernate之间,使用比较灵活. 一:目录结构 二:需要导入的jar包: 所有的第三方jar包都 ...
- 异常的应用finally与总结
一.finally{ },finally块中放入一定要执行的代码,通常用来关闭数据库,关闭链接,节约资源,所以finally中的内容一定要被执行,但是有一张情况不被执行,就是catch(Excep ...
- javascript开发中的封装模式(转)
var bgAuido={ audio : pingfan.$$('audio'), audioBtn : pingfan.$$('audioBtn'), init : function(){ var ...
- 输入参数varargin
一种特别的输入参数varargin 可以在自定义函数中得到,这种函数支持输入参数的变量的个数.这个参数显在输入参数列表的最后一项,它返回一个单元阵列,所以一个输入实参可以包括任意数目的实参.每一个实参 ...