iOS中資料庫運用之前的準備-簡單的資料庫

來源:互聯網
上載者:User

標籤:

1、資料持久化

  資料持久化是通過檔案將資料存放區在硬碟上

  iOS下主要有四種資料持久化方式

    屬性列表

    對象歸檔

    SQLite資料庫

    CoreData

  資料持久化對的對比

    1.屬性列表、對象歸檔適合小資料量的儲存和查詢操作

    2、SQLite、CoreData適合大資料的查詢和錯左

2、SQLite介紹

  SQLite是一款輕型的資料庫,是一種關係型資料庫管理系統,它的設計目的是為了嵌入式裝置中進行使用

  SQLite佔有資源非常低,非常適合行動裝置中使用,而且它是開源免費的

  它誕生於2000年,已經將近有20年的經曆,SQLite3也已經發布,官方網站是www.sqlite.org

3.資料庫語句 

  SQL語句(DDL、DML、DQL)

  DDL

    語句包含CREATE和DROP

    建立表和刪除表表

  DML

    其語句包含INSERT、UPDATE和DELETE,他們用于闐間、修改和刪除表中的資料,就是我們常說的增刪改

  DQL

    其語句包括SELECT,用於查詢資料

4具體的語句

  DDL

    建立表格

    CREATE TABLE 表格名 (欄位1 欄位1的類型,欄位2 欄位2的類型);

    刪除表格

    DROP TABLE 表格名字;

  DML

    插入INSERT

    INSERT INTO 表格名字 (欄位1,欄位2。。。。) VALUES(數值1,數值2);

    刪除DELETE

    DELETE FROM 表哥名

    如果在刪除資料時,如果沒有刪除條件,將會刪除所有值。如果想按照一定條件來刪除資料,則需要田間where語句 (and表示前後兩個條件都要符合)

    UPDATE修改

    UPDATE 表的名字 SET 修改修改的欄位名 = 需要修改的值 WHERE篩選條件;

    如果需要一次性修改多個欄位的值,選喲將這幾個欄位,用逗號隔開

  DQL語句

    查詢某一個表格中的資料

    使用SELECT語句進行查詢表格中的資料,能夠需要指定查詢的欄位。如果需要查詢所有的欄位,則用統配符*代替

    可以使用條件陳述式WHERE,來設定返回資料的篩選條件

  排序查詢結果

    查詢得到的結果,可以按照關鍵詞ORDER BY來指定排序條件。ASC升序 DESC降序

  模糊查詢

    使用LIKE關鍵詞,能夠執行模糊查詢,一般使用text類型資料

    SELECT *FORM 表格名 WHERE 需要模糊查詢的欄位 LIKE ‘模糊查詢條件,使用%來替代任一字元’

  設定顯示的資料數量

    在查詢比較多的情況下,如果查詢的結果比較多,查詢速度就會比較慢,並且返回結果所佔據的記憶體也有可能比較大

    SELECT * FROM 表格名 ORDER BY age ASC LIMIT x,y;

    查詢的結果進行升序排列,從x開始,往後顯示y條資料

   約束

    在建立表格,設定欄位時,能夠給欄位添加約束條件

   簡單約束

    不可為空

    NOT NULL 用於約束某一個欄位。被NOT NULL約束的欄位,在使用SQL語句插入或者修改的時候,不能設定為空白。

    唯一

    在同一個表格裡,某一個欄位設定唯一的值。那麼在欄位多條資料中,不能出現重複。

    預設值

    預設值能夠設定某一個欄位,在沒有設定具體指的條件下,將會被設定成預設值

  

 

    主鍵約束

      之間是用於區分資料表中不同資料的編碼。則整個編碼在沒一個表格中都是獨一無二的。在設計主鍵時應該遵守以下原則

      1.主鍵應該對該使用者沒有意義(學號、社會安全號碼沒有具體的意義)

      2.主鍵的值,無法修改,主鍵一旦產生,就無法被改變

      3.主鍵的值應該由系統自動產生,只有主鍵有系統自動產生,這樣將會完完整整的確保主鍵的完整性

      4.一個資料表中,最多隻能有一個主鍵

    主鍵的自動成長

      AUTOINCREMENT修飾主鍵,可以讓主鍵自動成長

      1.插入資料時,手動設定主鍵的值,能夠來設定主鍵

      2.如果沒有手動設定的主鍵,則自動使用比前表中資料最大的的資料大一的主鍵

  

 

 

    外間約束

      兩張表格之間,存在著資料的聯絡。為了能夠通過一個表格的資料,查詢對應的資料,可以是喲個外鍵進行關聯

      TABLE(id name age);table(id person ....)

      將A中的ID,作為外鍵和B中的Person進行關聯

      代碼

      

    注意:使用REFERENCES關鍵詞,能夠綁定外部索引鍵關聯。一般來說,綁定另一張表格中的主鍵是最好的選擇。在插入資料時,需要注意的是,外鍵的值,必須要是能夠在所關聯的表格中,存在並且唯一的相應的資料

  

 

    多表聯查

    在有外部索引鍵關聯的情況下,查詢表格,需要在兩個表格中,同時獲得資料。需要使用到奪標聯查

    SELECT * form 表格1 ON 表格1中的欄位=相對用表格2中的欄位

    

 

  如果想瞭解更多的資料庫關係,http://www.w3school.com.cn/sql/index.asp,可以在這個網站進行學習

  我寫這個是給學ios沒有任何資料庫基礎看的。

iOS中資料庫運用之前的準備-簡單的資料庫

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.