數據存儲之數據庫

解決類似微博緩存內容不要再次加載,而浪費流量

儲存數據的方式

  • plist 只能存儲系統自帶的一些類型,自定義對象無法存入

  • preference(偏好設置\NSUserDefaults)也同樣無法存儲自定義的對象

  • NSCoding歸檔可以存儲自定義對象
    (NSKeyedArchiver\NSKeyedUnarchiver)無論是讀入還是讀出,都是一次性的讀入讀出,不夠靈活

  • SQLite3 比較靈活且輕型且跨平臺

  • Core Data 是蘋果對于SQLite3的面向對象的包裝

SQLite

  • 什么是SQLite

  • SQLite是一種輕型的嵌入式數據庫

  • 占用的資源低,只需要幾百k的內存就夠了

  • 比Mysql處理速度更快

  • 什么是數據庫

  • 數據庫(Database)是按照數據結構來組織、存儲和管理數據的倉庫。

  • 數據庫可以分為兩大種類(關系型數據庫,對象型數據庫)

  • 常用關系型數據庫

  • PC端:Oracle(銀行多用)、Mysql(免費)、SQL Server、Access、DB2、Sybase

  • 嵌入式\移動客戶端:SQLite

如何存儲數據

  • 數據庫是如何存儲數據

  • 數據庫的存儲結構和excel很像,以表(table)為單位

  • 數據庫存儲數據的步驟

  • 創建一個數據庫文件

  • 新建一個表(table)

  • 添加多個字段(column,列,屬性)

  • 添加多行記錄(row,每行存放多個字段記錄的值)

主鍵約束(Primary Key 簡稱PK)
  • 良好的數據庫編程規范應該要保證每條記錄的唯一性,為此,增加了主鍵約束,也就是說每張表都必須又一個主鍵,用來標識記錄的唯一性。相當于人的身份證。不要修改主鍵,選擇自增長。

主鍵的設計原則

  • 主鍵應當是對用戶沒有什么意義的
  • 永遠也不要更新主鍵
  • 主鍵不應包含動態變化的數據
  • 主鍵應當由計算機自動生成

SQL語句

  • SQL語句的特點

  • 不區分大小寫

  • 每條語句都必須以分號;結尾

  • 數據庫中不可以使用關鍵字來命名

  • SQL語句的種類

  • 數據定義語句(DDL:Data Definition Language)包括在數據庫中創建新表或刪除表(create table 或drop table)

  • 數據操作語句(DML:Data Manipulation Language)包括insert、update、delete等操作

  • 數據查詢語句(DQL:Data Query Language)可以用于查詢獲得表中的數據,關鍵字select是用的最多的操作

在X-code中使用SQLite

  • 先把SQLite3框架引入X-code中
  • 數據庫其實就是一個文件

在刪除框架時,是刪除引用第二項,而不是丟到垃圾桶

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容