• iOS 结构化数据访问


    一、介绍

      在存储大量数据时,除了最基本的打开文件,读取文件,存盘等这些没有明确管理机制的方式来存储数据外,iOS还提供了另外几种重要的数据存储方式。虽然这些方式最后还是将数据存储在文件中,但是iOS以一套系统性有制度的方式来管理这些数据,让数据不再是“散乱”的存储在文件中。如此一来,我们很容易处理大量的数据,并且同时兼顾性能。最常用的有三种方式:

      1.PLIST文件

      2.SQLite数据库

      3.Core Data

    二、PLIST文件

      以XML格式存储的文本文件。

      存储的数据具有“属性名称与属性值”形式。

      由于iOS沙盒机制,每个App所在目录下只有三个文件夹具备写入权限。

      若将数据写入到.plist文件,则必须在App运行后将.plist文件移动到具有写入权限的文件夹中,一般为Documents。

    三、SQLite数据库

      由于Mac OS与iOS已经内置SQLite数据库引擎,因此只要在XCode项目中的Framework加入libsqlite3.dylib函数库,就可以让开发出来的App具备访问数据库的能力。

      若安装FireFox浏览器,下载SQLite Manager这个AddOn,就可以拥有一个免费且好用的图形化管理界面。

        

      操作数据库的数据几乎都是SQL Command的事,程序语言Objective-C在这里只是一个载体,目的是把SQLCommand送进数据库去运行,然后取得运行结果后输出而已。

      iOS内置数据库为SQLite可直接在终端机模式下输入sqlite3命令来启动SQLite Shell,然后通过SQL Command来完成数据库的所有管理和操作。

      在创建与数据库的连接后,最好不要经常开关数据库,这样会让系统运行的效率变得很差。

      在查询数据库中数据时,一般使用while循环,因为不知道查询的结果有多少条数据。

      如果SQLite数据库要存储图片,其字段类型为BLOB。

    四、Core Data

      Apple工程师将标准的数据库进行了一些变形,隐藏了SQL Command。

      在使用Core Data访问数据库前,必须要先将实体以及实体之间的关系设计出来。

      Core Data最后存储数据的地方依然是数据库,使用的是iOS内置的SQLite。

    五、链接

      http://blog.csdn.net/super_man_ww/article/details/51330464

  • 相关阅读:
    Hbase常用Shell命令
    Hbase的安装与基本操作
    Unity3d 游戏设计(一)井字棋
    Unity3d 二、离散仿真引擎基础
    Unity3D 一、游戏
    String StringBuffer StringBulider
    Java日志记录log4j最简明教程
    使用PinYin4j.jar将汉字转换为拼音
    线性素数筛
    求一个数的约数个数 d(n)
  • 原文地址:https://www.cnblogs.com/roxy/p/5682720.html
Copyright © 2020-2023  润新知