介紹
1.android 系統中整合的輕量級的資料庫
2.特點:
輕量級 只用乙個動態的庫, 是以單個檔案的形式進行訪問
跨平台 支援多個作業系統
零配置 無需安裝, 直接使用
嵌入式 內嵌到手機中
3.在程式的內部可以通過資料庫的名稱訪問, 其他應用不能訪問
4.路徑: data/data/應用程式包名/database/ ****.db
5.存放的型別:
null 空值
integer 整型(不用int)
varchar 可變長度的字元資料
text 文字字串
boolean 布林
date
time
2.資料庫核心類
1.sqliteopenhelper 資料庫的幫助類, 「用於資料庫的建立和版本更新」
(1)定義乙個類, 繼承sqliteopenhelper
(2)重寫構造方法 :提供資料庫的基本資訊 : 上下文物件,資料庫名稱,null,資料庫的版本號
(3)重寫父類的方法:
oncreate():第一次建立資料庫時呼叫, 只會執行一次 – 「初始化表,初始化資料」
onupgrade()
2.sqlitedatabase 資料庫的操作類, 「運算元據庫: 執行sql語句/增/刪/改/查」
(0)獲取sqlitedatabase物件
(1)執行sql 語句
void execsql(string sql,string bindargs); 執行增刪改
cusor rawquery(string sql,string selectionargs); 執行查詢
(2)執行方法 – 封裝好的方法 (適用於菜鳥級別的程式設計師)
insert() 插入資料
update() 修改資料
delete() 刪除資料
query() 查詢資料
使用事務批量處理資料
1.什麼是事務
就是把多件事情當做一件事情來處理。
在android應用程式開發中,經常會遇到需要進行資料庫操作的時候,提公升有關資料庫事務處理對android應用程式的穩定性和效率
事務的好處
1.首先android資料庫操作,特別是進行寫操作的時候非常慢,將所有操作打包成乙個事務能大大提高處理速度。
2.保證資料的一致性,讓乙個事務中的所有操作都成功執行,或者失敗,或者所有操作回滾。
例如:應用程式初始化時需要批量插入大量資料,單獨的使用for迴圈方法導致應用響應緩慢,因為 sqlite插入資料的時候預設一條語句就是乙個事務,有多少條資料就有多少次磁碟操作。我的應用初始5000條記錄也就是要5000次讀寫磁碟操作。
而且不能保證所有資料都能同時插入。(有可能部分插入成功,另外一部分失敗,後續還得刪除。太麻煩)
SQLlite新建資料庫
public class databasehelper extends sqliteopenhelper 帶兩個引數的建構函式,呼叫的其實是帶三個引數的建構函式 public databasehelper context context,string name 帶三個引數的建構函式,呼叫的是帶所有引...
SqlLite建立資料庫
1 sqlite 1.0.56.0 setup.rar 安裝系統執行sqllite的環境,只要安裝起來就可以了。仔細的研究了一下好像qq的訊息本地儲存也是用sqllite作為資料庫的,而且還加密的,只有qq的程式可以去獲取哪些加密的資訊,中國移動的飛信軟體也使用sqllite作為本地訊息的資料庫的,...
sqllite 資料庫 blob型別 問題小結
今天在使用sqllite的過程中遇到乙個問題,資料庫中的乙個字段怎麼也顯示不出來,經排查後發現 原來是字段型別搞錯了,將blob型別設定成了text型別,用視覺化操作軟體直接修改後依然無法顯示,很費解。經過查詢資料後發現是因為sqllite資料庫在字段型別問題,sqllite 是弱型別的資料庫,sq...