Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> 基於Android SQLite的使用介紹

基於Android SQLite的使用介紹

編輯:Android開發實例

在Android平台中,集成了一個嵌入式關系型數據庫--SQLite,它支持NULL、INTEGER、REAL(浮點數字)、TEXT(字符串文本)和BLOB(二進制對象)數據類型,雖然只支持五種數據類型,實際上可以接受varchar(n),char(n),decimal(p,s)等數據類型,在進行運算或保存的時候會轉換成對應的五種數據類型。
ex: 可以在Integer類型的字段中存放字符串,或者在布爾類型字段中存放浮點數,或者在字符型字段中存放日期,but!定義為INTEGER PRIMARY KEY的字段只能存儲64位整數,另外,在編寫CREATE TABLE語句時,可以省略跟在字段名稱後面的數據類型;
create table person(personid integer primary key autoincrement,name varchar(20))//name的類型可省略;
select * from tablename where tiaojian group by 分組字句 having... order by 排序字句
select * from person
select * from person order by id desc/asc
select name from person group by name having count(*)>1
分頁:select * from Account limit 5 offset 3 或者 select * from Account limit3,5
插入語句:insert into tablename(字段列表) values(值列表)
     insert into person(name,age) values("Livingstone",22)
更新語句:update tablename set field1=val1,field2=val2 where 條件語句
     update person set name="Livingstone" where id = 10
刪除語句:delete from tablename where 條件語句
     delete from person where id=10
獲取添加記錄後自增長的ID值:select last_insert_rowid()

SQLiteDatabase專門提供了對於添加、刪除、更新、查詢的操作方法:insert(),delete(),update()和query();

Insert()方法用於添加數據,各個字段的數據使用ContentValues進行存放,ContentValues類似於MAP,相對於 MAP,它提供了存取數據對應的put(String key,Xxx value)和getAsXxx(String key)方法;
long rowid=db.insert("person",null,values);//返回新添記錄的行號,與主鍵id無關;
不管第三個參數是否包含數據,執行Insert()方法必然添加一條記錄,如果第三個參數為空,會添加一條除主鍵之外
其他字段值為Null的記錄,Insert()方法內部其實是通過構造SQL語句完成數據的添加,第二個參數用於指定空值字段的名稱:如果第三個參數values為Null或者元素個數為0,由於Insert()方法要求必須添加一條除了主鍵之外其它字段為Null值的記錄,為了滿足SQL語法要求,insert語句必須給定一個字段名,ex:insert into person(name) values(NULL),若不給字段名,insert語句就為:insert into person() values(),對於字段名,建議使用主鍵之外的字段,如果使用了INTEGER類型的主鍵字段,執行類似insert into person(personid) values(NULL)的insert語句後,該主鍵字段值也不會為NULL,若第三個參數values不為Null並且元素個數大於0,第二個參數設置為null。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved