iOS中SQLite的操作方法_IOS

今天终于花了点时间把之前项目中使用到的对SQLite操作的方法整理一下并上传到github上,下载地址:(https://github.com/peanutNote/QYSQLiteManagerDemo.git)。

与其他第三方目的一样,主要是为了使代码中有关对SQLite操作简单化,具体用法:

将QYSQLiteManager文件add到项目中,并在需要对SQLite进行操作的类中添加#import "QYSQLiteManager" 。

// 插入语句
- (void)insertTable
{
 // 创建sql语句
 NSString *sql = @"insert into teacher(name,id) values(?,?)";
 // 不可变参数
// BOOL isOK = [QYSQLiteManager insertTableWithSqlString:sql andArray:@[@"小明",@115]];
 // 可变参数
 BOOL isOK = [QYSQLiteManager insertTableWithSqlString:sql andObjects:@"小明",@"115", nil];
 if (isOK) {
  NSLog(@"数据插入成功");
 } else {
  NSLog(@"数据插入失败");
 }
}
// 查询语句
- (void)selectTable
{
 NSString *sql = @"select * from teacher";
 [QYSQLiteManager selectTableWithSqlString:sql didFinishedBlock:^(NSArray *dataList, NSString *error) {
  NSLog(@"%@",dataList);
 } andObjects:nil];
}

// 修改表语句
- (void)alterTable
{
 NSString *sql = @"alter table teacher add column pwd integer";
 if([QYSQLiteManager alterTableWithSqlString:sql])
 {
  NSLog(@"修改成功");
 }
}

// 更新数据语句
- (void)updateTable
{
 NSString *sql = @"update teacher set name = ? where id = ?";
 if ([QYSQLiteManager updateTableWithSqlString:sql andArray:@[@"小明",@115]]) {
  NSLog(@"更新成功");
 }
}

  有关查询语句返回的数据类型,有需要的同学可以自行在“QYSQLiteManager.m”中查找“sqlite3_bind_text”,然后在如下处

for (int i = 0; i < column_count; i++) {
     // 获取字段名
     char * keyName = (char *)sqlite3_column_name(stmt, i);
     NSString *key = [NSString stringWithUTF8String:keyName];
     if (sqlite3_column_type(stmt, i) == SQLITE_TEXT) { // 当字段数据是“text”时
      // 获取字段对应的数据
      char *valueName = (char *)sqlite3_column_text(stmt, i);
      NSString *value = [NSString stringWithUTF8String:valueName];
      [dataDic setObject:value forKey:key];
     } else { // 当字段数据是integer时
      int value = sqlite3_column_int(stmt, i);
      [dataDic setObject:@(value) forKey:key];
     }
    }

修改你自己想要的数据类型即可。

以上内容是小编给大家日常收集整理的iOS sqlite对数据库的各种操作,希望对大家有所帮助

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ios
sqlite
ios sqlite数据库操作、c sqlite数据库操作、c 操作sqlite、php sqlite3 操作类、python sqlite3 操作,以便于您获取更多的相关知识。

时间: 2024-10-27 18:32:41

iOS中SQLite的操作方法_IOS的相关文章

iOS中SQLite使用教程_IOS

SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C#.PHP.Java等,还有ODBC接口,同样比起Mysql.PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快.SQLite第一个Alpha版本诞生于2

iOS中sqlite的详细用法_IOS

本文实例为大家分享了ios中sqlite的具体操作方法,供大家参考,具体内容如下 #import <sqlite3.h> @interface ViewController () { sqlite3 *_sqldb; } @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typicall

iOS中sqlite数据库的原生用法_IOS

在iOS中,也同样支持sqlite.目前有很多第三方库,封装了sqlite操作,比如swift语言写的SQLite.swift.苹果官网也为我们封装了一个框架:CoreData. 它们都离不开Sqlite数据库的支持. 本文主要介绍下,如何在swift中使用原生的sqlite的API. 在Xcode中引入sqlite API 新建一个swift项目后,我们需要让项目引入sqlite的动态链接库: 1.项目配置界面,选择Build Phases 2.点开Link Binary With Libra

iOS中SQLite数据库使用详解

使用SQLite数据库 创建数据库 创建数据库过程需要3个步骤: 1.使用sqlite3_open函数打开数据库: 2.使用sqlite3_exec函数执行Create Table语句,创建数据库表: 3.使用sqlite3_close函数释放资源. 这个过程中使用了3个SQLite3函数,它们都是纯C语言函数,通过Objective-C去调用C函数当然不是什么问题,但是也要注意Objective-C数据类型与C数据类型兼容性问题. 下面我们使用SQLite技术实现备忘录案例,与属性列表文件实现

详解IOS中GCD的使用_IOS

Grand Central Dispatch(GCD)是异步执行任务的技术之一.一般将应用程序中记述的线程管理用的代码在系统级中实现.开发者只需要定义想执行的任务并追加到适当的Dispatch Queue中,GCD就能生成必要的线程并计划执行任务.由于线程管理是作为系统的一部分来实现的,因此可统一管理,也可执行任务,这样就比以前的线程更有效率. 1. GCD是苹果公司为多核的并行运算提出的解决方案 GCD会自动利用更多的CPU内核(比如双核.四核) GCD会自动管理线程的生命周期(创建线程.调度

总结iOS中runtime的使用_IOS

做iOS的朋友都知道或听说runtime,这个东西很像java的反射机制,但功能远胜于java的反射.通过runtime我们可以动态的向一个类中添加属性.成员变量.方法,以及对其进行读写访问. 一.runtime简介 RunTime简称运行时.OC就是运行时机制,也就是在运行时候 的一些机制,其中最主要的是消息机制. 对于C语言,函数的调用在编译的时候会决定调用哪个函数. 对于OC的函数,属于动态调用过程,在编译的时候并不能决定真正调用哪个函数,只有在真正运行的时候才会根据函数的名称 找到对应的

通过UIKit坐标系来全面掌握iOS中的UIScrollView组件_IOS

感谢UIKit的坐标系统特性,使我们之花了30几行代码就能重现UIScrollView的精华,当然真正的UIScrollView要比我们所做的复杂的多,反弹效果,动量滚动,放大试图,还有代理方法,这些特性我们没有在这里涉及到. 首先,让我们先来了解一下UIKit中的坐标系是怎么工作的.如果你只对滚动试图的代码实现感兴趣可以放心跳过下一小节.UIKit坐标系每一个View都定义了他自己的坐标系统.如下图所示,x轴指向右方,y轴指向下方: 注意这个逻辑坐标系并不关注包含在其中View的宽度和高度.整

IOS中使用 CocoaAsyncSocket&amp;#8203;_IOS

Socket 如今在 iOS 里对 Socket 的应用慢慢多了起来,就一个即时通讯,很多应用都有集成,那即时通讯功能一般来说就肯定是基于 Socket 的,Socket 这个话题我一直谈论的比较少,一是由于看过一些 C/C++ 操作 Socket 的代码被吓到了一直还有心理阴影存在,二是工作里没怎么遇到相关的需求应用,所以也没有去深入研究相关内容. 还没接触过 Socket 编程肯定也会听说过这几个关键字:包.握手.连接.TCP.UDP 等等,Socket 编程的文章网上大把大把有,而作为一个

sqlite-ios中SQLite和core data使用求解

问题描述 ios中SQLite和core data使用求解 本人ios开发小白一枚,有几点疑问想咨询一下ios开发前辈. 第一:在ios app开发中,什么类型的应用会用到SQLite或者core data:第二:已经在运营中的电商类型的网站,数据库使用的是mysql,现在需要开发ios的app,app端的数据应该怎么和服务器进行通信呢?登陆,下单,支付等操作时的通信怎么才能保证数据传输的安全性呢? 解决方案 (1)需要本地数据存储的,需要离线运行的(2)使用web service,加密传输的信