首先引入文件:

libsqlite3.

FMDB(包含Global.m,Global.h文件)

关闭arc

用mesaSqlite创建一个数据库,引入文件中

其次:

首先,在Global.h文件中找到#define kDBName @"shuJu.db",如果你建立的数据库文件名为:liyongxing.db,那就将shuJu.db更改为liyongxing.db,然后再delegate里的self.window下添加一行代码copyMainBundleResourceToCacheDir(@"liyongxing.db");

OK,准备工作已经做好

再次,上代码:

创建一个增删改查的函数类:

//
//  CaoZuoData.h
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import <Foundation/Foundation.h>

#import "FMDatabase.h"

@class baoCunData;

@interface CaoZuoData : NSObject

//创建一个数据库对象

@property (nonatomic ,strong) FMDatabase * sqlite3;

//创建一个数据中转站的对象,数据中转站就是临时存放数据,做传递用的,最好一个数据类单独创建一个

@property (nonatomic ,strong) baoCunData * baoCun;

//增添数据

-(void)insertData:(baoCunData * )data;

//删除数据

-(void)delete:(NSString *)data;

//更改数据

//查找数据

-(NSMutableArray*) selectAll

@end

.m文件中

//
//  CaoZuoData.m
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import "CaoZuoData.h"

#import "Global.h"

#import "baoCunData.h"

@implementation CaoZuoData

-(id)init
{
    if (self==[super init])
    {
        self.sqlite3 = [FMDatabase databaseWithPath:dbPath()];
        
        [self.sqlite3 open];
    }
    return self;
}

#pragma mark-----增添数据

-(void)insertData:(baoCunData * )data
{
   [self.sqlite3 executeUpdate:@"INSERT INTO lyxShuJu(name,number) VALUES          (?,?)",data.nameData,data.numberData];
    
     NSLog(@"data.nameData == %@",data.nameData);
    
     NSLog(@"numberData == %@",data.numberData);

}

#pragma mark-----删除数据

-(void)delete:(NSString *)data

{

}

#pragma mark-----更改数据

#pragma mark-----查找数据--将所有数据库中查找到的值放在一个变动数组中

-(NSMutableArray*) selectAll
    {
        //从数据库中调出所有值赋给字符串
        
        NSString * query = @"SELECT * FROM lyxShuJu";
        
        //将数据库中的数据放到一个集合类FMResultSet中
        
        FMResultSet *set = [self.sqlite3 executeQuery:query];
        
        //创建一个动态数组
        
        NSMutableArray *dataArr = [[NSMutableArray alloc]init];
        
    //将集合中的数据循环取出,并赋给变动数组,返回值为这个变动数组
        
        while ([set next])
        {
            
            baoCunData * data = [[baoCunData alloc]init];
            
            data.nameData =[set stringForColumn:@"name"];
            
            data.numberData = [set stringForColumn:@"number"];
            
            [dataArr addObject:data];
            
        }
        return dataArr;
    }
@end

建立一个保存数据的类

//
//  baoCunData.h
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface baoCunData : NSObject

//一个姓名字符串

@property (nonatomic ,strong) NSString * nameData;

//号码字符串(号码中可能存在符号或者英文)

@property (nonatomic ,strong) NSString * numberData;

@end

.m中

//
//  baoCunData.m
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import "baoCunData.h"

@implementation baoCunData

-(id)init
{
    if (self == [super init])
    {
        
        self.nameData = nil;
        
        self.numberData = nil;
        
    }

return self;
}

@end

//数据库的引用类

.h文件

//
//  LYXViewController.h
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface LYXViewController : UIViewController

@property(nonatomic ,strong) UITextField * nameFile;

@property (nonatomic ,strong) UITextField * numberFile;

@end

.m文件中

//
//  LYXViewController.m
//  shuJuKu
//
//  Created by liyongxing on 13-7-31.
//  Copyright (c) 2013年 liyongxing. All rights reserved.
//

#import "LYXViewController.h"

#import "baoCunData.h"

#import "FMDatabase.h"

#import "CaoZuoData.h"

@interface LYXViewController ()

@property (nonatomic ,strong) baoCunData * baoCunShuJu;

@property (nonatomic ,strong) CaoZuoData * sqlite;

@end

@implementation LYXViewController

- (void)viewDidLoad
{
    [super viewDidLoad];
    
    //创建一个增删改查得类得对象
    
    self.sqlite = [[CaoZuoData alloc]init];

//创建两个输入框

self.nameFile = [[UITextField alloc]initWithFrame:CGRectMake(50, 50, 150, 50)];
    
    self.nameFile.backgroundColor = [UIColor greenColor];
    
    [self.view addSubview:self.nameFile];
    
    self.numberFile = [[UITextField alloc]initWithFrame:CGRectMake(50, 200, 150, 50)];
    
    self.numberFile.backgroundColor = [UIColor redColor];
    
    [self.view addSubview:self.numberFile];
    
  
    UIButton * button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    
    button.frame = CGRectMake(100, 80, 50, 40);
    
    button.backgroundColor = [UIColor redColor];
    
    [button addTarget:self action:@selector(baoCunData) forControlEvents:UIControlEventTouchUpInside];
    
    [self.view addSubview:button];
    
}

-(void)baoCunData
{
   
    self.baoCunShuJu= [[baoCunData alloc]init];
    
    self.baoCunShuJu.nameData = self.nameFile.text;
    
    self.baoCunShuJu.numberData = self.numberFile.text;
    
    [self.sqlite insertData:self.baoCunShuJu];

}

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

@end


iOS数据库之查找功能的实现的更多相关文章

  1. 在你的ASP.NET MVC中使用查找功能

    在程序中,使用查找功能是少之不了.今天在ASP.NET环境下演示一回. 在cshtml视图中,有三个文本框,让用户输入关键词,然后点击最右连的“搜索”铵钮,如果有结果将显示于下面. Html: 表格放 ...

  2. JDBC连接(MySql)数据库步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能

    主要内容:  JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十 ...

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

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

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

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

  5. source insight的查找功能

    source insight是一款非常好的c语言的程序编辑器.方便对project管理,方便程序的阅读和编辑. 查找功能使用十分频繁.选项较多,与其他软件的查找功能也类似,以下对英文版的查找功能,做简 ...

  6. 个人永久性免费-Excel催化剂功能第80波-按条件查找数字,扩展原生查找功能

    Excel的查找替换功能,只能对文本类数据查找较为得力,若需查找数字类型的数据,如查找大于100的数字,就无能为力,此篇Excel催化剂补足其短板. Excel数据类型知识背景介绍 用好Excel,必 ...

  7. SQL SERVER 数据库各版本功能对比

    以前写了篇SQL SERVER 2008数据库各版本功能对比,官网提供的那个功能确实很好很强大,后面发现那个链接失效了.今天又遇到要对比SQL Server 2014数据库版本功能需求,搜索找了好久才 ...

  8. iOS之开发支付功能概述

    前言:本随笔将对IOS开发的支付功能进行一个概述. 内容大纲: 一.常见的支付方案简介 二.第三方支付SDK 三.苹果官方支付方案 四.Web支付方案 正文: 一.常见的支付方案简介 在微信支付中 微 ...

  9. IOS开发之支付功能概述

    前言:本随笔将对IOS开发的支付功能进行一个概述. 内容大纲: 一.常见的支付方案简介 二.第三方支付SDK 三.苹果官方支付方案 四.Web支付方案 正文: 一.常见的支付方案简介 在微信支付中 微 ...

随机推荐

  1. 驱动开发 - WDK 调试及 SVN 环境搭建

    由于从公司辞职了,所以以前在公司里搭建的驱动开发环境也就 Game Over 了, 同样由于那环境是很久以前搭建的,自己也有很多记不清楚的地方了, 而且其中还是有很多需要注意的地方的,所以在这里顺便做 ...

  2. OpenCV学习笔记:矩阵的掩码操作

    矩阵的掩码操作很简单.其思想是:根据掩码矩阵(也称作核)重新计算图像中每个像素的值.掩码矩阵中的值表示近邻像素值(包括该像素自身的值)对新像素值有多大影响.从数学观点看,我们用自己设置的权值,对像素邻 ...

  3. hadoop2.2原理:采样器

    多输入路径-只采一个文件-(MultipleInputs+getsample(conf.getInputFormat) 之前弄采样器,以为已经结束了工作,结果现在又遇到了问题,因为我的输入有两个文件, ...

  4. 两种应该掌握的排序方法--------1.shell Sort

    先了解下什么都有什么排序算法 https://en.wikipedia.org/wiki/Sorting_algorithm http://zh.wikipedia.org/zh/%E6%8E%92% ...

  5. [Andrew]Ext.net Grid常用js

    var gridFunction= function (gridId) {                //获取当前Grid                var gridView = Ext.ge ...

  6. 添加iis的wolf、wolf2、json支持

    1.打开“mime类型”,添加: 如下“文件扩展名”和“mime类型”: .woff            application/x-font-woff .woff2          applic ...

  7. 安装qc 出现error An error occurred while attempting to connect to the database.

    When trying to install mercury quality center starter edition 9.0 on Windows XP media center, I am g ...

  8. 【原】日志处理-Spark

    日志信息如下所示: 1.1.1.1 - - [21/Jul/2014:10:00:00 -0800] "GET /majihua/article/284234 HTTP/1.1"  ...

  9. 使用 Windows PowerShell 管理Windows Azure映像

    你可以使用 Azure PowerShell 模块中的 cmdlet 管理可供你的 Azure 订阅使用的映像.这包括 Azure 提供的映像以及你上载的映像.对于某些映像任务,你还可以使用 Azur ...

  10. OS X: Keyboard shortcuts

    Using keyboard shortcuts To use a keyboard shortcut, press a modifier key at the same time as a char ...