Android核心技術-day03-01-建立SQLite資料庫
阿新 • • 發佈:2018-11-07
MyDBOpenHelper.java
package com.gaozewen.createdb; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; public class MyDBOpenHelper extends SQLiteOpenHelper { // 上下文 資料庫名稱 使用預設的遊標工廠 資料庫的版本號 // 版本號只能變大不能變小 public MyDBOpenHelper(Context context) { super(context, "gzwdb", null, 1); } @Override public void onCreate(SQLiteDatabase db) { System.out.println("onCreate 資料庫被建立了"); db.execSQL("create table contactinfo (id integer primary key autoincrement,name char(20),phone varchar(20));"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { System.out.println("onUpgrade 資料庫被更新了"); // db.execSQL("alter table contactinfo add account varchar(20);"); } }
MainActivity.java
package com.gaozewen.createdb; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.text.TextUtils; import android.view.View; import android.widget.EditText; import android.widget.Toast; import com.gaozewen.createdb.dao.ContactInfoDao; public class MainActivity extends AppCompatActivity { private EditText mEt_name; private EditText mEt_phone; private ContactInfoDao dao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MyDBOpenHelper helper = new MyDBOpenHelper(this); helper.getWritableDatabase(); // 建立一個數據庫 // 1. 找到所需控制元件 mEt_name = (EditText) findViewById(R.id.et_name); mEt_phone = (EditText) findViewById(R.id.et_phone); dao = new ContactInfoDao(this); } public void add(View view) { String name = mEt_name.getText().toString().trim(); String phone = mEt_phone.getText().toString().trim(); if (TextUtils.isEmpty(name) || TextUtils.isEmpty(phone)) { Toast.makeText(this, "不能為空", Toast.LENGTH_SHORT).show(); } else { dao.add(name, phone); Toast.makeText(this, "新增成功", Toast.LENGTH_SHORT).show(); } } public void delete(View view) { String name = mEt_name.getText().toString().trim(); if (TextUtils.isEmpty(name)) { Toast.makeText(this, "name不能為空", Toast.LENGTH_SHORT).show(); } else { dao.delete(name); Toast.makeText(this, "刪除成功", Toast.LENGTH_SHORT).show(); } } public void update(View view) { String name = mEt_name.getText().toString().trim(); String phone = mEt_phone.getText().toString().trim(); if (TextUtils.isEmpty(name) || TextUtils.isEmpty(phone)) { Toast.makeText(this, "不能為空", Toast.LENGTH_SHORT).show(); } else { dao.update(name, phone); Toast.makeText(this, "修改成功", Toast.LENGTH_SHORT).show(); } } public void query(View view) { String name = mEt_name.getText().toString().trim(); if (TextUtils.isEmpty(name)) { Toast.makeText(this, "name不能為空", Toast.LENGTH_SHORT).show(); } else { String phone = dao.query(name); Toast.makeText(this, "聯絡人電話是:" + phone, Toast.LENGTH_SHORT).show(); } } }