http://blog.csdn.net/github_29614995/article/details/46797917

在开发的当中,往往碰到要将数据持久化的时候用到FMDB,但是碰到模型中的属性有数组,但是FMDB存放的属性通常只为Text,那我们改怎么办呢?

思路:1.创建一个表,先将模型的除数组以为的其他属性写入表中,名为t_groupBuyModel 
2.创建一个表装载模型中的数组文本,名为t_images 
3.当存入模型到表中的时候,遍历模型中的数组属性,让每一条数据都存入t_images表中去

// 既然要使用到FMDB,肯定必须包含FMDB的头文件把,这些东西我就不多说了,直接奔重点

#import "FMDatabase.h"

> // 小编比较喜欢在对象的initialize方法里面创表(ps:好奇怪,发博客不写">"代码颜色不会变的,什么问题呢)
static FMDatabase *_db;
+ (void)initialize
{
NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0] stringByAppendingPathComponent:@"AJKGroupBuyModels.db"]; _db =[ FMDatabase databaseWithPath:path];
[_db open]; // 创表
[_db executeUpdate:@"CREATE TABLE IF NOT EXISTS t_groupBuyModel (id integer PRIMARY KEY,act_title text,cover_image text ,avg_price text,region_name text,join_num text,date_end text,act_rebate text,loupan_id text,loupan_name text,address text,see_detail text);"];
// 创建一个表装载模型中的数组文本
[_db executeUpdate:@"CREATE TABLE IF NOT EXISTS t_images (id interger PRIMARY KEY ,loupan_id text, image text)"];
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

———- 华丽的分割线

+ (void)addModel:(AJKGroupBuyModel *)model
{
[_db executeUpdateWithFormat:@"INSERT INTO t_groupBuyModel (act_title,cover_image,avg_price,region_name,join_num,date_end,act_rebate,loupan_id,loupan_name,address,see_detail) VALUES (%@,%@,%@,%@,%@,%@,%@,%@,%@,%@,%@);",model.act_title,model.cover_image,model.avg_price,model.region_name,model.join_num,model.date_end,model.act_rebate,model.loupan_id,model.loupan_name,model.address,model.see_detail];
// 根据对应的模型遍历数组内的对象并创建数据
for (int i = 0; i < model.images.count; i ++ ) {
[_db executeUpdateWithFormat:@"INSERT INTO t_images (loupan_id,image) values (%@,%@)",model.loupan_id,model.images[i]];
} }

IOS小技巧——使用FMDB时如何把一个对像中的NSArray数组属性存到表中的更多相关文章

  1. iOS小技巧总结,绝对有你想要的

    原文链接 在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIV ...

  2. iOS小技巧3

    将颜色合成图片 将颜色合成图片 +(UIImage *)imageWithColor:(UIColor *)color { CGRect rect = CGRectMake(0.0f, 0.0f, 1 ...

  3. Oracle中的自连接(self join)-当表中的某一个字段与这个表中另外字段的相关时,我们可能用到自连接。

    http://blog.163.com/wkyuyang_001/blog/static/10802122820091751049479/ 当表中的某一个字段与这个表中另外字段的相关时,我们可能用到自 ...

  4. iOS开发小技巧--利用运行时得到隐藏的成员变量

    一.关于运行时,已经从网络上摘抄了一片文章,这里只有项目中自己的简单使用 -- 查找隐藏的成员变量 导入头文件 可以获得隐藏的成员变量,方法,属性等 代码: 打印效果图:

  5. iOS小技巧 - 和屏幕等宽的Table分割线

    前言 因为本人也是学习iOS才一个多月,在写程序的过程中经常会遇到一些看似应该很简单,但是要解决好却要知道一点小trick的问题. 因此后面会陆续记一些这类问题,一来加深印象,二来也可以做个备忘录. ...

  6. 总有你需要的之 ios 小技巧 (下)

    图片上绘制文字 写一个UIImage的category NSMutableParagraphStyle* paragraphStyle = [[NSParagraphStyle defaultPara ...

  7. 你想要的iOS 小技巧总结

    UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIView alloc] initWithFrame:CGRectMake(, , ...

  8. iOS小技巧:用runtime 解决UIButton 重复点击问题

    http://www.cocoachina.com/ios/20150911/13260.html 作者:uxyheaven 授权本站转载. 什么是这个问题 我们的按钮是点击一次响应一次, 即使频繁的 ...

  9. iOS小技巧2

    这段代码是实现了类似QQ空间"我的空间"里面的圆形头像 //圆形的头像 UIImageView * headImage = [[UIImageView alloc]initWith ...

随机推荐

  1. Android ViewDragHelper完全解析 自定义ViewGroup神器

    Android ViewDragHelper完全解析 自定义ViewGroup神器   转载请标明出处: http://blog.csdn.net/lmj623565791/article/detai ...

  2. xntp的配置

    ntpdate以一种非常粗暴的方式一次性完成设置时钟.由于实时时钟飘移,你需要周期性的矫正.基本上可以通过设置一个cron例行任务来运行ntpdate,但是你的机器从此就不能是ntp服务器了. 相反, ...

  3. Linux学习 -- 文件系统管理

    1 分区和文件系统 分区类型 主分区:<= 4个 扩展分区:只能有一个,也算主分区的一种   不能存储数据和格式化,只能用来包含逻辑分区 逻辑分区:扩展分区中划分的   IDE--最多59个   ...

  4. 动态规划1-----------poj1080

    #include<cstdio> #include<cstdlib> #include<iostream> #include<algorithm> us ...

  5. bat脚本:自动压缩n天前的文件【转载】

    原文如下: bat脚本:自动压缩n天前的文件-中原小伙-ChinaUnix博客http://blog.chinaunix.net/uid-24946452-id-1651762.html     磁盘 ...

  6. js中的整型都是用double存储的,有时候不精确,如,

    sss=187948800449444864 187948800449444860   好像16位的时候还可以. http://segmentfault.com/a/1190000002608050

  7. strut1.X和spring整合的二种方法

    第一种集成方法 原理:在Action中取得BeanFactory对象,然后通过BeanFactory获取业务逻辑对象 缺点:产生了依赖,spring的类在action中产生了依赖查找.(注意和依赖注入 ...

  8. StarUML---推荐一款UML工具(很好很强大)

    转自:http://www.cnblogs.com/daizhj/archive/2008/04/14/1153121.html 上周我的一个朋友,同时也是目前公司的同事给我推荐了一款UML工具,开始 ...

  9. 修改SqlServer字段长度

    Alter Table  [JHEMR].[dbo].[PT_ERROR_LOG]  ALTER COLUMN  MESS  nvarchar(1000)

  10. bootstrap建立响应式网站——tab选项卡

    1.bootstrap给我们提供了标签页 细细看了一下bootstrap的标签页源码,对tab选项卡有了更深的理解.其实说来也简单,以前自己写js和css时没有意识到整体的划分.就是分为两部分:一部分 ...