1. 程式人生 > 實用技巧 >安卓使用SQLite將資料儲存在本地並做簡單處理的學習1

安卓使用SQLite將資料儲存在本地並做簡單處理的學習1

Android 提供的 SQLiteOpenHelper.java 是一個抽象類。那麼我們要使用它,必須自己寫一個類來繼承它,為了達到見名知意的目的習慣上,我們建立的都是DatabaseHelper.java或者簡寫DBHelper.java,這個無所謂,你建立成1234.java都行。

這一行規定死了,只能是這樣的。
       接下來需要寫一個帶全部引數的DBHelper類的建構函式,以後生成資料庫物件的時候要用到:

建構函式完事之後,寫繼承的抽象類SQLiteOpenHelper中的兩個抽象方法:

上面的程式碼有兩個問題,問題1.為什麼onUpgrade()方法是空的?答案:因為它是抽象方法,必須被繼承,但我為了達到極簡的目的又沒有用到它,一方面必須重寫,一方面沒有用到,所以就是一個空方法在這擺著樣子了。問題2.為什麼只重寫這兩個方法,其他的方法呢?
答案:因為SQLiteOpenHelper.java中,只有這兩個方法是抽象方法,你不信?我給你看看原始碼。(在AndroidStudio中我們按住Ctrl同時滑鼠單擊SQLiteOpenHelper就能進入它的原始碼中,在原始碼介面按住Ctrl+F 就能調出搜尋框,輸入abstract,點擊向下箭頭↓ 查詢匹配項)

    接下來看MainActivity.java檔案中的程式碼,其中只有兩部分程式碼。
    第一句程式碼中,建立Activity時會自動生成


介面控制元件id繫結初始化程式碼(將此方法放在OnCreate()函式內)

接下來是點選方法,繫結控制元件的點選事件
1.生成EditText物件,用來獲取文字輸入框中使用者輸入的內容

就像這樣:EditText insert_edittext = (EditText)findViewById(R.id.insert_edittext);

2.建立資料庫,這裡我們給資料庫起名為“dbtest”,資料庫版本號為1,程式碼如下:


使用switch--case進行判斷
3.響應增、刪、改、查四個按鈕點選時觸發的操作

①增:插入資料,首先需要new一個ContentValues,內容值物件。所謂的內容值,就是一個K,V 鍵值對,K指明欄位名稱即列名稱,V指明欄位值,即單元格內容。然後將這個鍵值對放到ContentValues的物件values裡面,再把攜帶著鍵值對的物件values插入user表中,程式碼如下:
②刪:刪除資料,這裡不需要生成ContentValues物件,直接從表user中delete符合要求的內容即可,程式碼如下:
③改:更新資料,這裡和插入資料類似,需要new一個ContentValues物件,然後放入資料,執行update,程式碼如下:
④查:查詢全部資料,這裡使用了Cursor遊標進行查詢,遊歷資料同時,把資料用換行符\n連線起來,再把所有資料展示到文字顯示框內,程式碼如下:


    下面是APP顯示介面


我們需要將可點選的button的onclick屬性都繫結到onClick方法。

————————————————
版權宣告:本文為CSDN博主「midnight_time」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/midnight_time/java/article/details/80834198