zoukankan      html  css  js  c++  java
  • 数据持久化的复习

    数据持久化的复习

    1. 普通对象的写⼊入 - NSString

    - NSArray
    - NSDictionary
    - NSData(保存图⽚片、⾳音频数据等)

    2. 复杂对象的写⼊入

    • -  遵守NSCoding协议

    • -  实现协议中的⽅方法

      • initWithCoder: (解码的⽅方法)

      • encoderWithCoder: (编码的⽅方法)

    • -  NSKeyedArchiver

    • -  NSKeyedUnarchiver

      3. 数据库

    • -  创建数据库

    • -  创建数据表: CREATE TABLE IF NOT EXISTS table_name (number INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE, name TEXT NOT NULL, gender TEXT NOT NULL, age INTEGER DEFAULT 18)

    • -  插⼊入数据: INSERT INTO table_name (name, gender, age) values (‘李⼤大泽’, ‘男’, ‘18’

    • -  修改数据: UPDATE table_name set name = ‘李泽’ WHERE number = ‘2’

    • -  删除数据: DELETE FROM table_name WHERE number = ‘2’

    • -  查找某⼀一条数据: SELECT * FROM table_name WHERE number = ‘1’

    • -  查找所有数据: SELECT * FROM table_nam

    page1image9384

    -

    常⽤用函数和值

    • sqlite3_open()
    • sqlite3_close()
    • sqlite3_exec()
    • sqlite3_prepare_v2() • sqlite3_finalize()

    • SQLITE_OK
    • SQLITE_ROW

    常⽤用的第三⽅方:FMDB

    -

    4. NSUserDefaults

    - - -

    保存⼀一个值,使⽤用起来⽅方便 路径:~/沙盒/Library/Preferences/****.plist

    常⽤用⽅方法:

    • setObject:forKey: • setBool:forKey:
    • setInteger:forKey: • objectForKey:

    • boolForKey:
    • integerForKey:

    5. 使⽤用场景 NSUserDefaluts:适合保存最⼩小量的数据,⽐比如:是否是第⼀一次进⼊入应⽤用、登录状态、⽤用

    户名等等

    简单对象写⼊入:适合保存偏多⼀一些的数据,例如:从服务器返回⼀一段⺴⽹网址,保存成⽂文件,
    直接从⽂文件读取
    
    复杂对象的写⼊入:将模型对象直接保存,⽐比写⼊入数据库⽅方便
    
    数据库:当数据量⽐比较⼤大,或者数据之间的关联较复杂的情况时,需要使⽤用数据库,创建
    数据表,保存⼤大量数据
    
  • 相关阅读:
    Java高并发24-使用自定义锁生成一个消费模型
    Java高并发连载23-基于AQS实现自定义同步器
    JavaScript连载38-编写评论界面
    Java高并发22-AQS条件变量的支持
    Java高并发21-AQS在共享,独占场景下的源码介绍
    SSH 集成Shiro和EhCache,设置登录超时时间无效解决办法。
    Vue3.0 + Echarts 实现地区人口数量分布展示
    从零开始学VUE之网络模块(Axios)
    从零开始学VUE之VueX(modules)
    从零开始学VUE之VueX(actions)
  • 原文地址:https://www.cnblogs.com/iOS-mt/p/4244959.html
Copyright © 2011-2022 走看看