![【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android中SQLite數(shù)據(jù)庫知識(shí)點(diǎn)總結(jié)_第1頁](http://file4.renrendoc.com/view/33a2d59d7d31d3dcd6264c83d70c580a/33a2d59d7d31d3dcd6264c83d70c580a1.gif)
![【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android中SQLite數(shù)據(jù)庫知識(shí)點(diǎn)總結(jié)_第2頁](http://file4.renrendoc.com/view/33a2d59d7d31d3dcd6264c83d70c580a/33a2d59d7d31d3dcd6264c83d70c580a2.gif)
![【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android中SQLite數(shù)據(jù)庫知識(shí)點(diǎn)總結(jié)_第3頁](http://file4.renrendoc.com/view/33a2d59d7d31d3dcd6264c83d70c580a/33a2d59d7d31d3dcd6264c83d70c580a3.gif)
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
【移動(dòng)應(yīng)用開發(fā)技術(shù)】Android中SQLite數(shù)據(jù)庫知識(shí)點(diǎn)總結(jié)
SQLite數(shù)據(jù)庫簡介SQLite是一個(gè)輕量級(jí)數(shù)據(jù)庫,它是D.RichardHipp建立的公有領(lǐng)域項(xiàng)目,在2000年發(fā)布了第一個(gè)版本。它的設(shè)計(jì)目標(biāo)是嵌入式的,而且占用資源非常低,在內(nèi)存中只需要占用幾百kB的存儲(chǔ)空間,這也是Android移動(dòng)設(shè)備采用SQLite數(shù)據(jù)庫的重要原因之一。SQLite是遵守ACID的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)。這里的ACID是指數(shù)據(jù)庫事務(wù)正確執(zhí)行的4個(gè)基本要素,即原子性(Atomicity)、致性(Consistency)、隔離性(lolation).持久性(Durabilily)。它能夠支持Windows/Linux/UNIX等主流的操作系統(tǒng),能夠跟很多程序語言,例如Tcl、C#、PHP、Java等相結(jié)合。比起Mysql、PostgreSQL這兩款開源數(shù)據(jù)庫管理系統(tǒng)來講,SQLite的處理速度更快。SQLite沒有服務(wù)器進(jìn)程,它通過文件保存數(shù)據(jù),該文件是跨平臺(tái)的,可以放在其他平臺(tái)中使用。并且在保存數(shù)據(jù)時(shí),支持null(零)、integer(整數(shù))、real(浮點(diǎn)數(shù)字)、text(字符串文本)和blob(二進(jìn)制對(duì)象)5種數(shù)據(jù)類型。但實(shí)際上SQLite也接收varchar(n)、char(n)、decimal(p,s)等數(shù)據(jù)類型,只不過在運(yùn)算或保存時(shí)會(huì)轉(zhuǎn)換成對(duì)應(yīng)的5種數(shù)據(jù)類型。因此,可以將各種類型的數(shù)據(jù)保存到任何字段中,而不用關(guān)心字段聲明的數(shù)據(jù)類型。SQLite數(shù)據(jù)庫創(chuàng)建在Android系統(tǒng)中,創(chuàng)建SQLite數(shù)據(jù)庫是非常簡單的。Android系統(tǒng)推薦使用SQLiteOpenHelper的子類創(chuàng)建數(shù)據(jù)庫,因此需要?jiǎng)?chuàng)建一個(gè)繼承自SQLiteOpenHelper,并重寫該類中的onCreate()方法和onUpgrade()方法即可。為什么要使用SQLiteOpenHelper的子類呢,因?yàn)镾QLiteOpenHelper為抽象類(abstract),必須使用其子類進(jìn)行繼承,同時(shí)還需要重寫父類的抽象方法,onCreate()方法和onUpgrade()方法都是其父類中的抽象方法。SQLite數(shù)據(jù)庫使用前面介紹了SQLite數(shù)據(jù)庫及如何創(chuàng)建數(shù)據(jù)庫,接下來將針對(duì)SQLite數(shù)據(jù)庫的增、刪、改、查操作進(jìn)行詳細(xì)講解。一、SQLite基本操作方法一1.增加一條數(shù)據(jù)下面以alan.db數(shù)據(jù)庫中的person表為例,介紹如何使用SQLiteDatabase對(duì)象的insert()方法向表中插入一條數(shù)據(jù),示例代碼如下。在上述代碼中,通過getWritableDatabase()方法得到SQLiteDatabase對(duì)象,然后獲得ContentValues對(duì)象并將數(shù)據(jù)添加到ContentValues對(duì)象中,最后調(diào)用inser()方法將數(shù)據(jù)插入到person表中。insert()方法接收3個(gè)參數(shù),第一個(gè)參數(shù)是數(shù)據(jù)表的名稱,第二個(gè)參數(shù)表示如果發(fā)現(xiàn)將要插入的行為空行時(shí),會(huì)將這個(gè)列名的值設(shè)為null,第三個(gè)參數(shù)為ContentValues對(duì)象。ContentValues類類似于Map類,通過鍵值對(duì)的形式存入數(shù)據(jù),這里的key表示插入數(shù)據(jù)的列名,value表示要插入的數(shù)據(jù)。需要注意的是,使用完SQLiteDatabase對(duì)象后定要調(diào)用close()方法關(guān)閉,否則數(shù)據(jù)庫連接會(huì)一直存在,不斷消耗內(nèi)存,當(dāng)系統(tǒng)內(nèi)存不足時(shí)將獲取不到SQLiteDatabase對(duì)象,并且會(huì)報(bào)出數(shù)據(jù)庫未關(guān)閉異常。2.修改一條數(shù)據(jù)下面介紹如何使用SQLiteDatabase的update()方法修改person表中的數(shù)據(jù),示例代碼如下。在上述代碼中,通過SQLiteDatebase對(duì)象db調(diào)用update()方法用來修改數(shù)據(jù)庫中的數(shù)據(jù),update()方法接收4個(gè)參數(shù),第一個(gè)參數(shù)表示表名,第二個(gè)參數(shù)接收一個(gè)ContentValues對(duì)象,第三個(gè)參數(shù)可選擇where語句,第四個(gè)參數(shù)表示whereClause語句中的占位參數(shù)列表,這些字符串會(huì)替換掉where條件中的"?"。3.刪除一條數(shù)據(jù)下面介紹如何使用SQLiteDatabase的delete()方法修改person表中的數(shù)據(jù),示例代碼如下。從上述代碼中可以看出,刪除數(shù)據(jù)不同于增加和修改數(shù)據(jù),因?yàn)閯h除數(shù)據(jù)不需要ContentValues來添加數(shù)據(jù)。4.查詢一條數(shù)據(jù)在進(jìn)行數(shù)據(jù)查詢時(shí)使用的是SQLiteDatabase的query0方法,該方法返回的是一個(gè)行數(shù)集合Cursor。Cursor是一個(gè)游標(biāo)接口,提供了遍歷查詢結(jié)果的方法,如移動(dòng)指針方法move(),獲得列值方法getString()等,通過這些方法可以獲取集合中的屬性值以及序號(hào)等。需要注意的是,在使用完Cursor對(duì)象后,一定要及時(shí)關(guān)閉,否則會(huì)造成內(nèi)存泄露。下面介紹如何使用SQLiteDatabase的query()方法查詢數(shù)據(jù),示例代碼如下。在上述代碼中,介紹了使用query()方法查詢person表中的數(shù)據(jù),query()方法接收7個(gè)參數(shù),第一個(gè)參數(shù)表示表名稱,第二個(gè)參數(shù)表示查詢的列名,第三個(gè)參數(shù)接收查詢條件子句,第四個(gè)參數(shù)接收查詢子句對(duì)應(yīng)的條件值,第五個(gè)參數(shù)表示分組方式,第六個(gè)參數(shù)接收having條件,即定義組的過濾器,第七個(gè)參數(shù)表示排序方式。二、SQLite基本操作方法二這種操作方法類似于執(zhí)行SQL語句(語法和SQLserver類似)。1.增加一條數(shù)據(jù)2.修改一條數(shù)據(jù)3.刪除一條數(shù)據(jù)4.查詢一條數(shù)據(jù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年事業(yè)單位合同簽訂風(fēng)險(xiǎn)防范與應(yīng)對(duì)措施
- 2025年廣州房地產(chǎn)交易合同居間操作流程
- 2025年數(shù)字視頻切換臺(tái)項(xiàng)目規(guī)劃申請(qǐng)報(bào)告模稿
- 2025年合作經(jīng)營居間投資協(xié)議書
- 2025年專業(yè)知識(shí)產(chǎn)權(quán)顧問合同范本
- 2025年債權(quán)轉(zhuǎn)讓合同協(xié)議示范
- 2025年信息技術(shù)咨詢顧問服務(wù)年合同
- 2025年農(nóng)村耕地流轉(zhuǎn)合同樣本
- 2025年住宿生權(quán)益協(xié)議
- 2025年傳統(tǒng)村落保護(hù)搬遷安置協(xié)議
- 消防器材與消防設(shè)施的維護(hù)與檢查
- 【理特咨詢】2024生成式人工智能GenAI在生物醫(yī)藥大健康行業(yè)應(yīng)用進(jìn)展報(bào)告
- 2025年中國中煤能源股份有限公司招聘筆試參考題庫含答案解析
- 2024年度碳陶剎車盤分析報(bào)告
- 2025年春新外研版(三起)英語三年級(jí)下冊(cè)課件 Unit6第1課時(shí)Startup
- 2025年1月 浙江首考英語試卷
- 2024建筑用輻射致冷涂料
- 2024版《糖尿病健康宣教》課件
- 2024年遼寧鐵道職業(yè)技術(shù)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
- 社區(qū)工作者經(jīng)典備考題庫(必背300題)
- 彩色英文書寫紙(共9頁)
評(píng)論
0/150
提交評(píng)論