iOS中SQLite持久化存储第三方库FMDB

@interface HMShopTool : NSObject
+ (NSArray *)shops;
+ (void)addShop:(HMShop *)shop;
@end
@implementation HMShopTool

static FMDatabase *_db;

  • (void)initialize
    {
    // 1.打开数据库
    NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@”shops.sqlite”];
    _db = [FMDatabase databaseWithPath:path];
    [_db open];

    // 2.创表
    [_db executeUpdate:@”CREATE TABLE IF NOT EXISTS t_shop (id integer PRIMARY KEY, name text NOT NULL, price real);”];
    }

  • (void)addShop:(HMShop *)shop
    {
    [_db executeUpdateWithFormat:@”INSERT INTO t_shop(name, price) VALUES (%@, %f);”, shop.name, shop.price];
    }

  • (NSArray *)shops
    {// 得到结果集
    FMResultSet set = [_db executeQuery:@”SELECT FROM t_shop;”];

    // 不断往下取数据
    NSMutableArray *shops = [NSMutableArray array];
    while (set.next) {
    // 获得当前所指向的数据
    HMShop *shop = [[HMShop alloc] init];
    shop.name = [set stringForColumn:@”name”];
    shop.price = [set doubleForColumn:@”price”];
    [shops addObject:shop];
    }
    return shops;
    }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/247099.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python超神之路:python异常对照表

python异常对照表 异常名称描述BaseException所有异常的基类SystemExit解释器请求退出KeyboardInterrupt用户中断执行(通常是输入^C)Exception常规错误的基类StopIteration迭代器没有更多的值GeneratorExit生成器(generator)发生异常来通知退出StandardError所有的内建标准异常…

python超神之路:创建对象的9种方法

python生成对象的9种方法 class Point:def __init__(self,x,y):self.x xself.y y import sys import copy import typespoint1 Point(1,2) point2 eval("{}({},{})".format("Point",1,2)) point3 globals()[Point](1,2) point4 locals()["Point…

面向接口的编程

面向接口的编程,将接口与实现分离,可以极大的降低代码的耦合,比如在编程中使用的加密接口,如果将具体的加密算法写入到使用加密的地方,这样就会导致,下一次加密方法发生改变的时候会导致大量的地方需要修改…

ASP.NET Core Web 应用程序系列(三)- 在ASP.NET Core中使用Autofac替换自带DI进行构造函数和属性的批量依赖注入(MVC当中应用)...

在上一章中主要和大家分享了在ASP.NET Core中如何使用Autofac替换自带DI进行构造函数的批量依赖注入,本章将和大家继续分享如何使之能够同时支持属性的批量依赖注入。 约定: 1、仓储层接口都以“I”开头,以“Repository”结尾。仓储层实现都以…

可视化caffe模型结构及在线可视化

在线可视化caffe模型结构 http://ethereon.github.io/netscope/#/editor 假设Caffe的目录是$(CAFFE_ROOT) 1.编译caffe的python接口 $ make pycaffe 2.装各种依赖 $ pip install pydot $ sudo apt-get install graphviz 3.可视化模型 draw_net.py执行的时候带三个参数 …

布式缓存系统Memcached简介与实践

缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载。缓存是解决这个问题的好办法。但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵活。此时Memcached或许是你想要的。Memca…

仿百度翻页(转)

https://www.cnblogs.com/fozero/p/9874334.html 转载于:https://www.cnblogs.com/hj0711/p/11390203.html

matlab 多核并行编程

在使用matlab处理大数据,编程需要注意两个问题:并行运算和释放内存。matlab也提供了并行计算的功能,甚至能用GPU加速。并行计算工具箱,叫做parallel computing toolbox.它的使用方法,可以从matlab的帮助获得。 Parall…

iOS核心动画之CALayer(1)

本文目录 一、什么是CALayer二、CALayer的简单使用 回到顶部一、什么是CALayer * 在iOS系统中,你能看得见摸得着的东西基本上都是UIView,比如一个按钮、一个文本标签、一个文本输入框、一个图标等等,这些都是UIView。 * 其实UIView之所以能显…

ASP.NET Core Web 应用程序系列(四)- ASP.NET Core 异步编程之async await

PS:异步编程的本质就是新开任务线程来处理。 约定:异步的方法名均以Async结尾。 实际上呢,异步编程就是通过Task.Run()来实现的。 了解线程的人都知道,新开一个线程来处理事务这个很常见,但是在以往是没办法接收线程里…

iOS核心动画之CALayer-layer的创建

本文目录 一、添加一个简单的图层二、添加一个显示图片的图层三、为什么CALayer中使用CGColorRef和CGImageRef这2种数据类型,而不用UIColor和UIImage?四、UIView和CALayer的选择五、UIView和CALayer的其他关系 * 上一讲已经说过,UIView内部默…

iOS核心动画之CALayer-隐式动画

本文目录 一、隐式动画属性二、position和anchorPoint 回到顶部一、隐式动画属性 * 在前面几讲中已经提到,每一个UIView内部都默认关联着一个CALayer,我们可用称这个Layer为Root Layer(根层)。所有的非Root Layer,也就…

多进程补充

多进程补充 僵尸进程和孤儿进程 基于unix环境(linux,macOS) 主进程需要等待子进程结束之后,主进程才结束 主进程时刻监测子进程的运行状态,当子进程结束之后,一段时间之内,将子进程进行回收.为什么主进程不在子进程结束后马上对其回收呢? 主进程与子进程是异步关系.主进程无法…

iOS核心动画之CALayer-自定义层

本文目录 一、自定义层的方法1二、自定义层的方法2 三、其他 自定义层,其实就是在层上绘图,一共有2种方法,下面详细介绍一下。 回到顶部一、自定义层的方法1 方法描述:创建一个CALayer的子类,然后覆盖drawInContext:方…

iOS核心动画之CoreAnimation

本文目录一、Core Animation简介二、Core Animation的使用步骤三、CAAnimation四、CAPropertyAnimation 回到顶部一、Core Animation简介 * Core Animation,中文翻译为核心动画,它是一组非常强大的动画处理API,使用它能做出非常炫丽的动画效果…

抽象类

当编写一个类时,我们往往会为该类定义一些方法,这些方法是用来描述该类的功能具体实现方式,那么这些方法都有具体的方法体。 也就是编辑一个类 这个类不是绝体的东西 是一个抽象的 例如 描述JavaEE工程师:行为:工作。 …

iOS核心动画 Core Animation2-CABasicAnimation

Core Animation2-CABasicAnimation 本文目录 一、平移动画二、缩放动画三、旋转动画四、其他 CABasicAnimation是CAPropertyAnimation的子类,使用它可以实现一些基本的动画效果,它可以让CALayer的某个属性从某个值渐变到另一个值。下面就用CABasicAnimat…

OpenStack Telemetry系统架构及实践

1. 概述 早期OpenStack的计量功能由Ceilometer项目负责,后来Ceilometer一分为四,每个项目负责一个方面的工作。不得不说这是OpenStack开发中的一个特色,比如Cinder和Neutron也是从早期的Nova中拆分出来的。 OpenStack Telemetry体系的架构如下…

产品经理十二时辰:内容过于真实,扎心了!

各大平台也纷纷借势: 《阿里十二时辰》 《优酷十二时辰》 《垃圾十二时辰》 《深圳十二时辰》 《北京十二时辰》 《考研人十二时辰》 …… 各种十二时辰刷爆朋友圈。 后台很多留言: 起点学院怎么没有出《产品经理十二时辰》呢?你这产品经理教…

iOS持久化存储-CoreData简介

本文目录 一、简介二、模型文件三、了解NSManagedObject对象四、CoreData中的核心对象五、代码实现六、打开CoreData的SQL语句输出开关七、创建NSManagedObject的子类 回到顶部一、简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能&…