iOS FMDB的是使用和注意事项】的更多相关文章

1.FMDB 默认的使用方法不是线程安全的. 2.Sqlite 默认不支持外键. 3.Sqlite 不支持用 ALTER 关键字给已有表添加外键约束 解决: 1.FMDBDatabaseQueue 2.Sqlite 要主动启用外键. 3.创建表的时候添加外键约束…
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FMDB的使用... 例: 增,删,改,查,sqlite存取图片 有关框架的导入我在上一篇博客进行了详细介绍这里就不在介绍,没有看到上一篇博客的可以点击下面的连接. iOS sqlite3 的基本使用(增 删 改 查) 接下来我会按照上篇博客的顺序,模式进行介绍. (增删改查与sqlite存取图片我会通…
ios开发中,经常会用到数据库sqlite的知识,除了增,删,改,查之外,我们说说如何获取数据库中有多少表和表相关的内容. 前言 跟数据库使用相关的一般的增删改查的语句,这里就不做解释了.在网上有很多.记得之前项目中曾经有这样的一个场景.一个数据库中存在了好几个表.假定我们不知道表名的前提下来获取这些数据. 数据库结构 下来看看数据库结构: 我们可以看到,在这个数据库文件中一共有10个表.我们的目的就是获取这些表中的内容. 获取数据库中有多少表 在这里我们使用的是 FMDB 来操作的.我们下打开…
以前做了一个应用,里面用到了FMDB,进行每一次操作前,都open,完成操作后都close.因为我是参考他们以前的代码.程序初期没发现什么问题,程序完成后,各种卡顿就出现了!即使我是放在新线程里操作的.仔细检查后发现,程序用在open 和 close上的cpu占有率异常地高,尤其是快速操作进行测试时.后来我查到了下面的帖子,原来,用错了! http://stackoverflow.com/questions/15720272/when-to-close-sqlite-database-using…
简介: SQLite (http://www.sqlite.org/docs.html) 是一个轻量级的关系数据库.iOS SDK 很早就支持了 SQLite,在使用时,只需要加入 libsqlite3.dylib 依赖以及引入 sqlite3.h 头文件即可.但是,原生的 SQLite API 在使用上相当不友好,在使用时,非常不便.于是,开源社区中就出现了一系列将 SQLite API 进行封装的库,而 FMDB (https://github.com/ccgus/fmdb) 则是开源社区中…
FMDB FMDB概述 什么是FMDB * FMDB是iOS平台的SQLite数据库框架 * FMDB以OC的方式封装了SQLite的C语言API FMDB的优点 * 使用起来更加面向对象,省去了很多麻烦.冗余的C语言代码 * 对比苹果自带的Core Data框架,更加轻量级和灵活 * 提供了多线程安全的数据库操作方法,有效地防止数据混乱 FMDB的github地址 * https://github.com/ccgus/fmdb FMDB基本使用 FMDB有三个核心类 FMDatabase *…
任何的开发都或多或少的接触到数据库,而在IOS中一般使用的是SQLite数据库,这是一个轻量功能较为不错的数据库.而现在用到比较多的第三方数据库操作框架就是FMDB.废话不多说,相信查找到这篇文章的都是已经上手的IOS开发者,直接上一些相关使用. 提供git地址点击这里. 首先简单介绍下 实现客户端数据库操作的第三方框架. 操作数据库的类 : FMDatabase.h 队列调度数据库执行的类 : FMDatabaseQueue.h 查询数据的类 : FMResultSet.h 注意 第三方的官方…
第一份代码,为了纠正原代码不显示29号的bug,先上代码 require('NSString','MCDatePickType','NSMutableArray','UIButton'); defineClass('MMCDatePickView',{ setDatePickViewSelected: function() { self.setSelectedYearRow(self.yearArray().indexOfObject(self.currentYearString())); se…
今天从早上9点,一直在看FMDB,知道中午11:40.我的效率是不是很低下.中间也碰到了几个小bug. 虽然做了一个小demo,但是觉得还比不上在项目中使用中锻炼的多,先暂且一总结. 先下载FMDB的文件: 引入到项目中: 添加<libsqlite3.dylib>库: 新建项目,开始使用 下面我们就一条条地说: FMDB的下载地址: https://github.com/ccgus/fmdb: FMDB里面的‘fmdb’,引入到项目中,其他的可以不要: 在Link Binary With Li…
由于FMDB是建立在SQLite的之上的,所以你至少也该把这篇文章从头到尾读一遍.与此同时,把SQLite的文档页 http://www.sqlite.org/docs.html 加到你的书签中.自动引用计数(APC)还是手动内存管理呢? 两种都行,FMDB会在编译的时候知道你是用的哪一种,然后进行相应处理.使用方法 FMDB有三个主要的类 FMDatabase – 表示一个单独的SQLite数据库. 用来执行SQLite的命令.    FMResultSet – 表示FMDatabase执行查…
本人最近从Android平台的OpenGL ES开发转到iOS平台的OpenGL ES开发,由于平台不同,所以开发中会有一些区别,再次列出需要注意的几点. 1.首先需要了解iOS主要开发框架,再次仅介绍开发OpenGL ES应用常用的几个: CoreGraphics.framework  ——包含Quartz 2D接口(Core Graphics框架参考) Foundation.framework ——包含Cocoa Foundation层的类和方法(Foundation框架参考) OpenGL…
http://blog.sina.com.cn/s/blog_9630f1310101fx1d.html /查询记录 -(NSArray*)selectitemDream_desc:(JiemengSimple *)item { NSString *sql = [NSString stringWithFormat:@"SELECT * FROM pinyinSimple WHERE alpha like '%@%%'",item.dream_keyword];//模糊查询,查找alph…
使用FMDB很方便的实现了(通过数据库字段名而不是字段索引)数据的读取,插入,更新,删除.但是我在更新图片时发现通过格式化字符(@“%@”,data/NSData/)传入的二进制数据更新到数据库后不能显示图片.如果使用的时INSERT 方法能将图片信息正确保存到数据库重,因为在FMDB中处理INSERT时会调用到下面的方法 - (void)bindObject:(id)obj toColumn:(int)idx inStatement:(sqlite3_stmt*)pStmt { if ((!o…
除了设置程序的后台模式,还需要几行代码 AVAudioSession *session = [AVAudioSession sharedInstance]; [session setCategory:AVAudioSessionCategoryPlayback error:nil]; [session setActive:YES error:nil]; 不加这几行代码是无法在真机上后台播放的!(模拟器好像可以不加) 在附一张background模式的设置图…
n使用事务 [queue inTransaction:^(FMDatabase *db, BOOL *rollback) { [db executeUpdate:@"INSERT INTO t_student(name) VALUES (?)", @"Jack"]; [db executeUpdate:@"INSERT INTO t_student(name) VALUES (?)", @"Rose"]; [db execut…
以*.a静态库的形式引入工程的(比如:libUploadLib.a),*.a里面的class有category形式实现时,除了在工程Target的 Build Phases里面的 Link Binary With Libraries里面添加依赖外,还需要在Target的 Build Settings的 Linking -> Other Linker Flags (Debug or Release)里面添加:-force_load$(BUILD_DIR)/$(CONFIGURATION)$(EFF…
下面不废话了直接上代码…
前言 需求描述 开发测试环境 FMDB介绍 创建工程 一.前言 上一章介绍了如何开发一个IOS应用的入门案例教程:                     我的第一个IOS开发应用    本章主要将介绍如何使用sqlite,来进行本地持久化存储数据.   二.需求描述 在游戏开始一段时间后,我们需要存储角色的基础信息,以便我休息之后继续进行上次的旅途. 三.开发环境介绍 OS X EI Captian:10.11.4 Xcode: 7.3 ios:9.3 机型:iphone 6s/iphone…
这篇文章主要介绍ios webrtcdemo的实现及相关注意事项,转载请说明出处(博客园RTC.Blacker) 前面很多人问webrtc android下有webrtcdemo,ios上怎么找不到,放在哪里呢? 答案:webrtcdemo在ios上没有实现,如果要实现也很简单,既然安卓都有了,依葫芦画瓢即可移植到ios上,不过可能要求您熟悉android语法,这里给出ios上的参考代码: -(BOOL)initWebrtcObjects { //转载请说明出处: RTC_Blacker htt…
UIView 基本方法 UIView的一些基本方法理解:loadView.viewDidLoad.viewDidUnload.viewWillAppear,viewWillDisappear init:方法在init方法中实例化必要的对象init方法中初始化ViewController本身 loadView:方法 只调用一次这是当没有正在使用nib视图页面,子类将会创建自己的自定义视图层.绝不能直接调用.如果手工维护view,必须重载重写该方法.当view需要被展示而它却是nil时,viewCo…
iOS用户体验之-导航之道 用户不会意识到有导航指向的存在除非他遇到非预期的效果. 能够说导航时逻辑跳转的节点.所以导航对用户体验是至关重要的. iOS中有三种类型的导航.每一种适合不同类型的app. 1.层次类型的导航 在分层app中.一个选择相应一个页面,当这个页面没有分支为止,要想到达还有一个分支,你必须返回又一次的选择,iOS中 的setting和Mail就是非常好的样例. 2.平铺类型的导航 平铺类型的就能够看作是一个字典类型.通过键就跳到值的位置.如电话本,点击姓就跳到姓的组去了.…
随笔分类 - webrtc   Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). callstats是一家做实时通讯性能测阅读全文 posted @ 2016-07-22 08:…
实际项目开发中为了能够给用户更好的体验,有些延时操作我们都会放在子线程中进行. 今天我们就来聊聊多线程在实际项目中的运用. 我们先来看看多线程的基础知识: 1.多线程的原理: 同一时间,CPU只能处理一条线程,也就是只有一条线程在工作.所谓多线程并发(同时)执行, 其实是CPU快速的在多线程之间调度(切换).如果CPU调度线程的时间足够快,就造成了多线程并 发执行的假象. 2.在实际项目开发中并不是线程越多越好,如果开了大量的线程,会消耗大量的CPU资源,CPU会 被累死,所以一般手机只开1~3…
使用Assetbundle时可能遇到的坑 一 24 十一郎未分类 No Comments 转自 http://www.unitymanual.com/blog-3571-132.html 1.Editor版本不能读取与自己版本不同的assetbundle这个问题描述起来很简单:比如:老板原来让你用4.1打包(BuildAssetBundle)开发,开发完毕后,下半年,unity升级了, 于是老板要求与时俱进,让你用4.3开发维护,这时,问题就出现了:4.1下的editor打包的assetbund…
原地址:http://www.cnblogs.com/realtimepixels/p/3652128.html 一 24 十一郎未分类 No Comments 转自 http://www.unitymanual.com/blog-3571-132.html 1.Editor版本不能读取与自己版本不同的assetbundle这个问题描述起来很简单:比如:老板原来让你用4.1打包(BuildAssetBundle)开发,开发完毕后,下半年,unity升级了, 于是老板要求与时俱进,让你用4.3开发…
WebRTC 音视频开发 webrtc   Android IOS WebRTC 音视频开发总结(七八)-- 为什么WebRTC端到端监控很关键? 摘要: 本文主要介绍WebRTC端到端监控(我们翻译和整理的,译者:weizhenwei,校验:blacker),最早发表在[编风网] 支持原创,转载必须注明出处,欢迎关注我的微信公众号blacker(微信ID:blackerteam 或 webrtcorgcn). callstats是一家做实时通讯性能测阅读全文 posted @ 2016-07-…
再次提醒,刷机需慎重处理. http://blog.csdn.net/ztp800201/article/details/11980643 iphone一共同拥有三种工作模式,各自是正常模式,恢复模式和DFU模式. DFU的全称是Development FirmwareUpgrade,实际意思就是iPhone固件的强制升降级模式. 普通情况下,正常无法恢复固件的时候DFU模式都能够轻松解决. 因为3GS和第三代iPod Touch恢复固件须要进行官方认证,所以没备份过ECID跟SHSH的同学就不…
ARC下需要注意的内存管理 2016/04/03 · iOS开发 · 内存管理 分享到:1 原文出处: 一不(@luoyibu)    之前发了一篇关于图片加载优化的文章,还是引起很多人关注的,不过也有好多人反馈看不太懂,这次谈谈iOS中ARC的一些使用注意事项,相信做iOS开发的不会对ARC陌生啦.这里不是谈ARC的使用,只是介绍下ARC下仍然可能发生的内存泄露问题,可能不全,欢迎大家补充. Ps:关于ARC的使用以及内存管理问题,强烈建议看看官方文档,里面对内存管理的原理有很详细的介绍,相信…
集大软件工程15级个人作业Week2 快速通读教材<构建之法>,并参照提问模板,提出5个问题. 在每个问题后面,请说明哪一章节的什么内容引起了你的提问,提供一些上下文 列出一些事例或资料,支持你的提问. 说说你提问题的原因,你说因为自己的假设和书中的不同而提问,还是不懂书中的术语,还是对推理过程有疑问,还是书中的描述和你的经验(直接经验或间接经验)矛盾? [附加题]:请将问题提交至豆瓣:https://book.douban.com/subject/27069503/, 并在博客中给出链接 在…
喜欢的朋友可以关注下,粉丝也缺. 相信很多的码友在项目中都需要接入微信支付,虽说微信支付已成为一个普遍的现象,但是接入的过程中难免会遇到各种各样的坑,这一点支付宝的SDK就做的很好,已经完成的都知道了. 下面就开始我们的代码之旅,这里我将给大家提供两种支付一个是微信公众号支付,一个是APP微信支付. 一 微信公众号支付 流程: 1.获取用户openid 2.获取token,注意获取的token是有时效的而且接口是有获取上线,具体看微信API文档 3.拿商品信息(金额,名字等)去请求统一下单接口…