使用SQLite
SQLite是Android內建的一個小型資料庫
首先我們需要一個SQLiteOpenHelper來幫我們架設好基本的資料庫的架構
這是一個基本的SQLiteOpenHelper的樣子
他會有一個private static int version = 1;
跟final private static String DBname = "MyTest.db";
一個是目前的版本,另一個是你資料庫的名字
版本只能越來越大,不然在建構子的部分會出現錯誤
再來就是onCreate,裡面可以看到熟悉的SQL語法
SQLite中的
數字是用INTEGER
字串是用TEXT(能不能用VARCHAR可以試試)
浮點數是用REAL(雖然我用DOUBLE也沒問題就是了)
最後就是onUpgrade
當他在建構子中發現你的版本更新了就會執行這一段(會更新通常不外乎是增加table或是table的結構變了)
創建完Helper了,接下來就是要在自己的Activity中實用了
剛剛建了這麼辛苦當然是有用的首先先宣告一個SQLiteDatabase
接著在onCreate中把他的WritableDatabase傳給他就沒他的事了(戲分少
實際使用的時候你會需要一個Cursor來接他找出來的資料
找到資料後Cursor會在-1的位置,所以就用while把找到的資料一行一行取出來
雖然Cursor有各種getXX的方法,不過並不是代表索引的數字是XX類別的第幾個
換個說法,比較像是把索引位置的值用什麼類別取出來
(所以以上面為例索引1的位置其實也能用c.getString(1)把他轉成字串)
另外rawQuery可以用取代的方式取代字串(像是rawQuery("Select ?","name")這樣),沒有字串要取代的話第二個值就是null了
最後,要怎麼確認自己打了半天的資料到底有沒有進到SQLite的資料庫呢
首先(記得要先把模擬器關掉)在tools->Android中找到Android Device Monitor
接著再打開模擬器等一會兒
接著在旁邊找到資料夾data/data/"packagename"/database裡面就會找到你命名的資料庫了~
點他一下,然後按右上角最左邊的磁碟片把他匯出來,再用查看軟體(像我是用DB Browser for SQLite)就能看到資料庫到底打了什麼東西進去了!
首先我們需要一個SQLiteOpenHelper來幫我們架設好基本的資料庫的架構
這是一個基本的SQLiteOpenHelper的樣子
他會有一個private static int version = 1;
跟final private static String DBname = "MyTest.db";
一個是目前的版本,另一個是你資料庫的名字
版本只能越來越大,不然在建構子的部分會出現錯誤
再來就是onCreate,裡面可以看到熟悉的SQL語法
SQLite中的
數字是用INTEGER
字串是用TEXT(能不能用VARCHAR可以試試)
浮點數是用REAL(雖然我用DOUBLE也沒問題就是了)
最後就是onUpgrade
當他在建構子中發現你的版本更新了就會執行這一段(會更新通常不外乎是增加table或是table的結構變了)
創建完Helper了,接下來就是要在自己的Activity中實用了
剛剛建了這麼辛苦當然是有用的首先先宣告一個SQLiteDatabase
接著在onCreate中把他的WritableDatabase傳給他就沒他的事了(戲分少
實際使用的時候你會需要一個Cursor來接他找出來的資料
找到資料後Cursor會在-1的位置,所以就用while把找到的資料一行一行取出來
雖然Cursor有各種getXX的方法,不過並不是代表索引的數字是XX類別的第幾個
換個說法,比較像是把索引位置的值用什麼類別取出來
(所以以上面為例索引1的位置其實也能用c.getString(1)把他轉成字串)
另外rawQuery可以用取代的方式取代字串(像是rawQuery("Select ?","name")這樣),沒有字串要取代的話第二個值就是null了
最後,要怎麼確認自己打了半天的資料到底有沒有進到SQLite的資料庫呢
首先(記得要先把模擬器關掉)在tools->Android中找到Android Device Monitor
接著再打開模擬器等一會兒
看到左邊的手機出現,就表示讀取成功了!!
點他一下,然後按右上角最左邊的磁碟片把他匯出來,再用查看軟體(像我是用DB Browser for SQLite)就能看到資料庫到底打了什麼東西進去了!

留言
張貼留言