文章目錄
零、學習目標
- 學會利用sqlite3來建立以及操做數據庫
- 能利用SQLiteDatabase操做數據庫與表
- 能利用SQLiteOpenHelper操做數據庫與表
1、SQLite數據庫概述
SQLite是D. Richard Hipp用C語言編寫的開源嵌入式數據庫引擎。它支持大多數的SQL92標準,而且能夠在全部主要的操做系統上運行。html
一、SQLite構成
SQLite由SQL編譯器、內核、後端以及附件幾個部分構成。SQLite經過利用虛擬機和虛擬數據庫引擎(VDBE),使得調試、修改和擴展SQLite的內核變得更加方便,全部SQL語句都被編譯成易讀的、能夠在SQLite虛擬機中執行的程序集。SQLite的總體結構圖以下:
web
二、SQLite數據類型
歸納來說,SQLite支持NULL、INTEGER、REAL、TEXT和BLOB數據類型,分別表明空值、整型值、浮點值、字符串文本、二進制對象。sql
三、SQLite數據庫特色
- 值得一提的是,袖珍型的SQLite居然能夠支持高達2TB大小的數據庫,每一個數據庫都是以單個文件的形式存在,這些數據都是以B-Tree的數據結構形式存儲在磁盤上。
- 在事務處理方面,SQLite經過數據庫級上的獨佔性和共享鎖來實現獨立事務處理。這意味着多個進程能夠在同一時間從同一數據庫讀取數據,但只有一個能夠寫入數據。在某個進程或線程想數據庫執行寫操做以前,必須得到獨佔鎖。在得到獨佔鎖以後,其餘的讀或寫操做將不會再發生。
- SQLite採用動態數據類型,當某個值插入到數據庫時,SQLite將會檢查它的類型,若是該類型與關聯的列不匹配,SQLite則會嘗試將該值轉換成該列的類型,若是不能轉換,則該值將做爲自己的類型存儲,SQLite稱這爲「弱類型」。但有一個特例,若是是INTEGER PRIMARY KEY,則其餘類型不會被轉換,會報一個「datatype missmatch」的錯誤。
- ACID,指數據庫事務正確執行的四個基本要素的縮寫。包含:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability)。一個支持事務(Transaction)的,必須要具備這四種特性,不然在事務過程(Transaction processing)當中沒法保證數據的正確性,交易過程很可能達不到交易方的要求。
2、SQLite數據庫管理工具
(一)數據庫控制檯管理工具 - sqlite3
一、下載sqlite3
- 在Pecompiled Binaries for Windows下載 sqlite-tools-win32-x86-3340000.zip (1.76 MiB)
二、解壓縮到指定目錄
- 解壓縮到D盤根目錄
- 修改一下目錄名 - D:\sqlite3
三、使用sqlite3操做數據庫及表
- 建立學生數據庫 - student.db
- 若是數據庫存在,那麼sqlite3 <數據庫名>就是打開數據庫,不然就是新建數據庫
- 查看所有數據庫
- 建立學生表 - stu
- 查看錶結構
- 插入表記錄
- 查看錶記錄
- 更新表記錄 - 將「李紅雲」改爲「李小云」
- 刪除表記錄 - 刪除id爲2的記錄
- 刪除學生表
- 幫助命令
- 從新建立學生表並插入記錄
(二)數據庫可視化管理工具 - Navicat
一、利用Navicat訪問sqlite3數據庫及表
二、新建查詢,進行查詢操做
本文同步分享在 博客「howard2005」(CSDN)。
若有侵權,請聯繫 support@oschina.cn 刪除。
本文參與「OSC源創計劃」,歡迎正在閱讀的你也加入,一塊兒分享。數據庫