iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 27
0

前言

本篇要講的是在本地端就可以執行的資料庫

操作

第一步:到官網下載看資料庫資料需要的程式

https://sqlitebrowser.org/dl/
第二步:建立一個 class 叫做 StdDBHelper 然後繼承 SQLiteOpenHelper
這個class為創建這個資料庫的格式

spackage com.example.touth;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class StdDBHelper  extends SQLiteOpenHelper {
    private static final String DATABASE_NAME = "Class.db";
    private static final int DATABASE_VERSION = 1;
    public StdDBHelper(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
    @Override
    public void onCreate(SQLiteDatabase db) {
    //students為資料庫的名子
    //id,X,Y分別代表資料庫的3個欄位
        String creatSQL = "CREATE TABLE students (" +
                "id INTEGER primary key AUTOINCREMENT, " +
                "X VARCHAR(250)," +
                "Y VARCHAR(250))";
        db.execSQL(creatSQL);
    }
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    }
}

第三步:在主程式呼叫

 static SQLiteDatabase db;
 private StdDBHelper dbHelper;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Stetho.initializeWithDefaults(this);
        start=findViewById(R.id.start);
        start.setOnClickListener(this);
//        myview=findViewById(R.id.myview);
        dbHelper = new StdDBHelper(this);
        db = dbHelper.getWritableDatabase(); // 開啟資料庫
    }

第四步:把資料寫入資料庫

public boolean onTouchEvent(MotionEvent event) {
...
    String insert = "INSERT INTO students(  X,Y)" +
                        "VALUES (" + x +","+ y +");";
    db.execSQL(insert);
    }

第五步:關閉資料庫

protected void onStop() {
  super.onStop();
  db.close(); // 關閉資料庫
    }

如要看到資料庫只需依續點擊即可
https://ithelp.ithome.com.tw/upload/images/20201008/20129418qgFqzZHuf9.png
之後儲存那個class再到下載的程式打開即可
https://ithelp.ithome.com.tw/upload/images/20201008/20129418DaQNHdlxFw.png
記得下載程式裡的 Table 需要點選自己創建的資料庫名稱


上一篇
第26篇:遊戲搖桿製作(4)(布局設定)
下一篇
第28篇:如何操控版面上的原件
系列文
Android的30天學習歷程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言