Android SQLite簡介及SQL語句記錄

一.SQLite的介紹


1.SQLite簡介


SQLite是一款輕型的數據庫,是遵守ACID的關聯式數據庫管理系統,它的設計目標是嵌入  式的,而且目前已經在很多嵌入式產品中使用了它,它佔用資源非常的低,在嵌入式設備中,可能只需要幾百K的內存就夠了。它能夠支持 Windows/Linux/Unix等等主流的操作系統,同時能夠跟很多程序語言相結合,比如Tcl、PHP、Java、C++、.Net等,還有ODBC接口,同樣比起 Mysql、PostgreSQL這兩款開源世界著名的數據庫管理系統來講,它的處理速度比他們都快。


2.SQLite的特點:

  • 輕量級

SQLite和C/S模式的數據庫軟件不同,它是進程內的數據庫引擎,因此不存在數據庫的客戶端和服務器。使用SQLite一般只需要帶上它的一個動態  庫,就可以享受它的全部功能。而且那個動態庫的尺寸也挺小,以版本3.6.11爲例,Windows下487KB、Linux下347KB。

  • 不需要"安裝"

SQLite的核心引擎本身不依賴第三方的軟件,使用它也不需要"安裝"。有點類似那種綠色軟件。

  • 單一文件 

數據庫中所有的信息(比如表、視圖等)都包含在一個文件內。這個文件可以自由複製到其它目錄或其它機器上。

  • 跨平臺/可移植性

除了主流操作系統 windows,linux之後,SQLite還支持其它一些不常用的操作系統。

  • 弱類型的字段

同一列中的數據可以是不同類型

  • 開源


3.SQLite數據類型

一般數據採用的固定的靜態數據類型,而SQLite採用的是動態數據類型,會根據存入值自動判斷。SQLite具有以下五種常用的數據類型:

NULL: 這個值爲空值

VARCHAR(n):長度不固定且其最大長度爲 n 的字串,n不能超過 4000。

CHAR(n):長度固定爲n的字串,n不能超過 254。

INTEGER: 值被標識爲整數,依據值的大小可以依次被存儲爲1,2,3,4,5,6,7,8.

REAL: 所有值都是浮動的數值,被存儲爲8字節的IEEE浮動標記序號.

TEXT: 值爲文本字符串,使用數據庫編碼存儲(TUTF-8, UTF-16BE or UTF-16-LE).

BLOB: 值是BLOB數據塊,以輸入的數據格式進行存儲。如何輸入就如何存儲,不改  變格式。

DATA :包含了 年份、月份、日期。

TIME: 包含了 小時、分鐘、秒。
 

二、SQL語句記錄

創表語句:

create table student_table(_id integer primary key autoincrement, name text, age integer);

在升級過程中,添加表字段:注意升級過程中新增到表子段要允許爲null

alter table student_table add age integer null

新增:

insert into student_table(name,age) values('青冘',19);

刪除:

delete from student_table where _id = 1;

更新:

update student_table set name='青' where _id = 1;

查詢:

select _id,name,age from student_table;
select * from student_table;
select * from student_table where _id = 1;

其他語句:

// 判斷不存在才執行
IF NOT EXISTS
if not exists

清除表裏面的所有數據:

String dropSQL = "delete from " + TABLE_NAME;

刪除表,直接把表刪除,慎用 drop table

String dropSQL = "drop table if exists " + TABLE_NAME;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章