首頁>Club>
2
回覆列表
  • 1 # 每日一語錄

    sqlite的主要優點:

     零配置(Zero Configuration)

    SQlite3不用安裝,不用配置,不用啟動,關閉或者配置資料庫例項。當系統崩潰後不用做任何恢復操作,再下次使用資料庫的時候自動恢復。

     緊湊(compactness):

      SQLite是被設計成輕量級,自包含的。一個頭檔案,一個lib庫,你就可以使用關係資料庫了,不用任何啟動任何系統程序。一般來說,整個SQLITE庫小於225KB。

     可移植(Portability)

     它是執行在Windows,Linux,BSD,Mac OSX和一些商用Unix系統,比如Sun的Solaris,IBM的AIX,同樣,它也可以工作在許多嵌入式作業系統下,比如QNX,VxWorks,PalmOS, Symbin和Windows CE。

      最大特點:採用無資料型別,所以可以儲存任何型別的資料,SQLite採用的是動態資料型別,會根據存入值自動判斷。SQLite具有以下五種資料型別:

    1.NULL:空值。

    2.INTEGER:帶符號的整型,具體取決有存入數字的範圍大小。

    3.REAL:浮點數字,儲存為8-byte IEEE浮點數。

    4.TEXT:字串文字。

    5.BLOB:二進位制物件。

    但同樣的,這樣的做法會導致在插入和修改時,要花去更多的時間。

    SQLITE的缺點:

    1:SQLITE不可儲存過多的資料庫,它的效能發揮最好只能在存放較小的資料量情況下。不要把它當做MYSQL甚至ORACLE來使用。它只是一個200K的資料庫。

    2:sqlite3不像MYSQL那樣使用固定日誌檔案,所有使用insert、update、delete的執行效率只是一般,sqlite3的一個事務,需要呼叫4次fsync()操作,而一般的大型資料庫,如mysql只用到了2次。sqlite3對每個事務都建立一個臨時檔案來記錄日誌,這個日誌建立、更新和刪除竟然使用了3次fsync()!為什麼不用一個固定的日誌檔案呢?實在難以理解設計者的思路。可能他們把重點放在"Select"效能上吧。透過閱讀sqlite3-3.5.1的原始碼,發現作者也試圖對這個問題進行修正,可能由於可靠性的原因,一直沒有正式公佈。

  • 中秋節和大豐收的關聯?
  • 一千字哄女朋友?