【移動(dòng)應(yīng)用開發(fā)技術(shù)】怎么在android studio中使用SQLiteOpenHelper()建立數(shù)據(jù)庫_第1頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】怎么在android studio中使用SQLiteOpenHelper()建立數(shù)據(jù)庫_第2頁
【移動(dòng)應(yīng)用開發(fā)技術(shù)】怎么在android studio中使用SQLiteOpenHelper()建立數(shù)據(jù)庫_第3頁
免費(fèi)預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

【移動(dòng)應(yīng)用開發(fā)技術(shù)】怎么在androidstudio中使用SQLiteOpenHelper()建立數(shù)據(jù)庫

怎么在androidstudio中使用SQLiteOpenHelper()建立數(shù)據(jù)庫?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。在androidstudio中存儲(chǔ)數(shù)據(jù)有三個(gè)方法,分別是:(1)簡單存儲(chǔ)——SharedPreferences(2)文件存儲(chǔ):內(nèi)部存儲(chǔ)——應(yīng)用程序私有文件外部存儲(chǔ)——SD卡資源文件——只讀(RAW、XML)(3)數(shù)據(jù)庫存儲(chǔ)——SQLiteDataBase今天我們講講在androidstudio中利用數(shù)據(jù)庫存儲(chǔ)中的SQLiteOpenHelper()方法建立數(shù)據(jù)庫SQLiteOpenHelper中需要重載函數(shù):onCreate():利用SQL語句,在系統(tǒng)中創(chuàng)建數(shù)據(jù)庫(表)功能onUpgrade():利用SQL語句,在系統(tǒng)中升級(jí)數(shù)據(jù)庫(表)功能注:onCreate()方法只有第一次數(shù)據(jù)庫創(chuàng)建時(shí)會(huì)用到onUpgrade()方法在版本更新會(huì)用到SQLiteOpenHelper中被調(diào)用的函數(shù):getWritableDatabase():獲取一個(gè)可讀寫的SQLiteDatabase對(duì)象getReadableDatabase():獲取一個(gè)只讀的SQLiteDatabase對(duì)象創(chuàng)建數(shù)據(jù)庫1.新建一個(gè)類繼承SQLiteOpenHelper這里按Alt+Enter倆次添加構(gòu)造方法public

class

MySQLOpenHelper

extends

SQLiteOpenHelper

{

public

MySQLOpenHelper(@Nullable

Context

context

,

@Nullable

String

name

,

@Nullable

SQLiteDatabase.CursorFactory

factory

,

int

version)

{

super(

context

,

name

,

factory

,

version

);

}(1)這個(gè)方法里面是用來創(chuàng)建數(shù)據(jù)庫的context是一個(gè)訪問application環(huán)境全局信息的接口,通過它可以訪問application的資源和相關(guān)的類context其主要功能如下:啟動(dòng)Activity啟動(dòng)和停止Service發(fā)送廣播消息(Intent)注冊(cè)廣播消息(Intent)接收者可以訪問APK中各種資源(如Resources和AssetManager等)可以訪問Package的相關(guān)信息APK的各種權(quán)限管理Context就是一個(gè)對(duì)APK包無所不知的大管家,大家需要什么,直接問它就可以了(2)name是數(shù)據(jù)庫的名字(3)CursorFactoryfactory游標(biāo)工廠,用來指向數(shù)據(jù)庫里面的某一行CursorFactory用來創(chuàng)建游標(biāo)的,默認(rèn)值為null,指向一開始的位置(4)version數(shù)據(jù)庫的版本號(hào)版本號(hào)只能增加,不能遞減,要不然程序會(huì)崩潰其他倆個(gè)方法是用來創(chuàng)建表的,接下來會(huì)講到我們繼續(xù)構(gòu)建數(shù)據(jù)庫:在MySQLOpenHelper類中重構(gòu)代碼:public

class

MySQLOpenHelper

extends

SQLiteOpenHelper

{

public

MySQLOpenHelper(@Nullable

Context

context

)

{//name是數(shù)據(jù)庫名字,后綴加.db

super(

context

,

"SQLite.db"

,

null

,

1

);

}在MainActivity類中調(diào)用這個(gè)方法MySQLOpenHelper

helper=new

MySQLOpenHelper(

this

);然后再在MainActivity類中實(shí)例化數(shù)據(jù)庫添加代碼如下MySQLOpenHelper

helper=new

MySQLOpenHelper(

this

);

//創(chuàng)建一個(gè)可讀可寫的數(shù)據(jù)庫

SQLiteDatabase

writableDatabase=helper.getWritableDatabase();

//創(chuàng)建一個(gè)只可讀的數(shù)據(jù)庫

SQLiteDatabase

readableDatabase=helper.getReadableDatabase();這個(gè)讀者看需要自行構(gòu)建代碼,(只能存在一個(gè))我們的數(shù)據(jù)庫創(chuàng)建完成了,接下來看看我們的數(shù)據(jù)庫是否創(chuàng)建成功了呢在看之前我們先運(yùn)行我們的虛擬機(jī),因?yàn)閿?shù)據(jù)庫是建立在虛擬機(jī)里面的,運(yùn)行完之后我們?nèi)フ覄?chuàng)建的文件。android3.0以前打開虛擬機(jī)中的文件是用導(dǎo)航欄中的Tools中Android,3.0以后為了提供的更新工具把它舍棄了但我們可以通過View導(dǎo)航欄中ToolWindows中的DeviceFileExplorer打開,找到data目錄下的data下的程序的包名,找到創(chuàng)建的數(shù)據(jù)庫(.db文件//另一個(gè)是相對(duì)應(yīng)的日記文件),右鍵重新

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論