IOS之Sqlite3的简单实现
2013-07-17 09:59
190 查看
思路:利用外部工具简单实现数据库的数据调用
工具:mesaSQLite(下面为数据库)
![](http://img.blog.csdn.net/20130716133754546?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTE5OTU5Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
使用:首先安装,安装好后,打开后台,创建一个数据库:ls->cd desktop-> sqlite3 li.db -> create table shujuku(id integer primary key , name text, number integer,sex text);
上面的操作就完成了创建一个文件名为li.db,数据库名为shujuku,各项分别为:编号(id),姓名(name ),号码(number),性别(sex)的数据库
![](http://img.blog.csdn.net/20130716134116906?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTE5OTU5Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
之后就是你要在数据库中创建自己想要的数据
如下图,刚刚选择的时候是空的,首先要按右下角的加号,添加一行,再按右上角的show all按键,就能显示你现有的数据库列表,就像是在excel中添加数据一样,添加自己的数据
![](http://img.blog.csdn.net/20130716134614734?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTE5OTU5Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
数据填写好之后,就是如何将数据倒入工程中,用add file的方法将数据库添加到工程中
![](http://img.blog.csdn.net/20130716134814093?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTE5OTU5Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
之后就是在工程中导入相应的文件,包括:
![](http://img.blog.csdn.net/20130716135027859?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTE5OTU5Mg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
FMDB是第三方的库,libsqlite3.dylib是Xcode自带的框架
导入后,运行一下发现报错,是因为FMDB不支持arc,要手动的利用-fno-objc-arc的方法关掉arc,再运行,就不会有错误了
.h文件中不需要写什么代码,直接在.m中引入数据库,代码如下:
//
// LYXViewController.m
// ssdf
//
// Created by Lee-Yongxing on 13-7-15.
// Copyright (c) 2013年 阿阿. All rights reserved.
//
#import "LYXViewController.h"
#import "FMDatabase.h"
@interface LYXViewController ()
@end
@implementation LYXViewController
- (void)viewDidLoad
{
[super viewDidLoad];
//将数据库的数据引入到一个字符串中
NSString * str = [[NSBundle mainBundle]pathForResource:@"li"ofType:@"db"];
//将字符串赋给一个数据库对象
FMDatabase * FMD = [[FMDatabase alloc]initWithPath:str];
//打开数据库,如果没有这个步骤,是看不到数据的
[FMD open];
//打印数据库,发现再工程中已经有了一个内存地质
NSLog(@"FMD == %@",FMD);
//通过表名将数据库中的数据放到FMResultSet中
FMResultSet * resultSet = [FMD executeQuery:@"select * from shujuku" ];
//遍历数据结果,并将想要的列数据放到每个动态的数组中
while ([resultSet next])
{
NSMutableArray * array = [[NSMutableArray alloc]init];
NSMutableArray * array1 = [[NSMutableArray alloc]init];
NSMutableArray * array2 = [[NSMutableArray alloc]init];
NSMutableArray * array3 = [[NSMutableArray alloc]init];
//将id放入动态数组array中
[array addObject:[resultSet stringForColumn:@"id"]];
//将name放入动态数组array1中
[array1 addObject:[resultSet stringForColumn:@"name"]];
//将number放入动态数组array2中
[array2 addObject:[resultSet stringForColumn:@"number"]];
//将sex放入动态数组array3中
[array3 addObject:[resultSet stringForColumn:@"sex"]];
//打印各个数组中的数据,可以看到,每一列的数据已经放到了各个动态的数组中
NSLog(@" array ==== %@",array);
NSLog(@" array1 ==== %@",array1);
NSLog(@" array2 ==== %@",array2);
NSLog(@" array3 ==== %@",array3);
}
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
工具:mesaSQLite(下面为数据库)
使用:首先安装,安装好后,打开后台,创建一个数据库:ls->cd desktop-> sqlite3 li.db -> create table shujuku(id integer primary key , name text, number integer,sex text);
上面的操作就完成了创建一个文件名为li.db,数据库名为shujuku,各项分别为:编号(id),姓名(name ),号码(number),性别(sex)的数据库
之后就是你要在数据库中创建自己想要的数据
如下图,刚刚选择的时候是空的,首先要按右下角的加号,添加一行,再按右上角的show all按键,就能显示你现有的数据库列表,就像是在excel中添加数据一样,添加自己的数据
数据填写好之后,就是如何将数据倒入工程中,用add file的方法将数据库添加到工程中
之后就是在工程中导入相应的文件,包括:
FMDB是第三方的库,libsqlite3.dylib是Xcode自带的框架
导入后,运行一下发现报错,是因为FMDB不支持arc,要手动的利用-fno-objc-arc的方法关掉arc,再运行,就不会有错误了
.h文件中不需要写什么代码,直接在.m中引入数据库,代码如下:
//
// LYXViewController.m
// ssdf
//
// Created by Lee-Yongxing on 13-7-15.
// Copyright (c) 2013年 阿阿. All rights reserved.
//
#import "LYXViewController.h"
#import "FMDatabase.h"
@interface LYXViewController ()
@end
@implementation LYXViewController
- (void)viewDidLoad
{
[super viewDidLoad];
//将数据库的数据引入到一个字符串中
NSString * str = [[NSBundle mainBundle]pathForResource:@"li"ofType:@"db"];
//将字符串赋给一个数据库对象
FMDatabase * FMD = [[FMDatabase alloc]initWithPath:str];
//打开数据库,如果没有这个步骤,是看不到数据的
[FMD open];
//打印数据库,发现再工程中已经有了一个内存地质
NSLog(@"FMD == %@",FMD);
//通过表名将数据库中的数据放到FMResultSet中
FMResultSet * resultSet = [FMD executeQuery:@"select * from shujuku" ];
//遍历数据结果,并将想要的列数据放到每个动态的数组中
while ([resultSet next])
{
NSMutableArray * array = [[NSMutableArray alloc]init];
NSMutableArray * array1 = [[NSMutableArray alloc]init];
NSMutableArray * array2 = [[NSMutableArray alloc]init];
NSMutableArray * array3 = [[NSMutableArray alloc]init];
//将id放入动态数组array中
[array addObject:[resultSet stringForColumn:@"id"]];
//将name放入动态数组array1中
[array1 addObject:[resultSet stringForColumn:@"name"]];
//将number放入动态数组array2中
[array2 addObject:[resultSet stringForColumn:@"number"]];
//将sex放入动态数组array3中
[array3 addObject:[resultSet stringForColumn:@"sex"]];
//打印各个数组中的数据,可以看到,每一列的数据已经放到了各个动态的数组中
NSLog(@" array ==== %@",array);
NSLog(@" array1 ==== %@",array1);
NSLog(@" array2 ==== %@",array2);
NSLog(@" array3 ==== %@",array3);
}
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
相关文章推荐
- Objective-C ,ios,iphone开发基础:使用第三方库FMDB连接sqlite3 数据库,实现简单的登录
- Objective-C ,ios,iphone开发基础:使用第三方库FMDB连接sqlite3 数据库,实现简单的登录
- 简单封装sqlite3 实现实体对象与关系型数据库的相关操作【IOS】
- sqlite之增删改查--简单的实现iOS收藏夹功能
- Objective-C ,ios,iphone开发基础:使用第三方库FMDB连接sqlite3 数据库,实现简单的登录
- Objective-C ,ios,iphone开发基础:使用第三方库FMDB连接sqlite3 数据库,实现简单的登录
- iOS开发 - OC - 实现本地数据存储的几种方式二(直接使用sqlite)
- Appium+Robotframework实现iOS应用的自动化测试-5:一个简单的例子
- iOS实现简单图文混排效果
- IOS 用openCv实现简单的扣人像的
- 基于sqlite3实现的简单通讯录程序(控制台)
- iOS AutoLayout阅读笔记2------>子视图固定比例分割父视图的简单实现
- iOS自定义日历控件的简单实现过程
- IOS开发 键盘添加工具条 退出 上一项 下一项 简单实现
- iOS 一个简单的实现星级评分的方法
- ios开发UI篇—使用纯代码自定义UItableviewcell实现一个简单的微博界面布局
- iOS开发 简单实现倒计时的方法
- iOS开发UI篇―事件处理(实现一个简单的涂鸦板)
- iOS 6 编程--Core Data持久化数据存储(2)-使用Core Data实现简单ShoppingCart应用程序
- iOS开发UI篇—使用xib自定义UItableviewcell实现一个简单的团购应用界面布局