標籤:android 操作sqlite
sqlite有一點不同於其他常見資料庫,就是sqlite資料庫是存成檔案的,可以直接把該檔案從手機裡匯出來,以檔案的形式存在,然後放到電腦上查看。
Android操作資料庫有如下步驟:
1、繼承SQLiteOpenHelper,實現裡面的方法。
public class MyDbHelper extends SQLiteOpenHelper { public MyDbHelper(Context context) { super(context, "db3", null, 1); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table db(id int primary key autoincrement,name varchar(10),phone varchar(15));"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { db.execSQL("alert table db add column yuan varchar(11);"); }}2、建立一個dao層,作用類似java中的ssh架構中的dao層,用來操作資料庫 public class ContactInfoDao { private final MyDbHelper mMyDbHelper; private final SQLiteDatabase mDb; //構造方法,產生該類的實體物件時直接產生操作資料庫的對象 public ContactInfoDao(Context context){ mMyDbHelper = new MyDbHelper(context); mDb = mMyDbHelper.getWritableDatabase(); } /** * 新增連絡人...資訊 * @param name * @param phone */public void add(String name,String phone){ mDb.execSQL("insert into db3(name,phone) values(?,?)",new Object[]{name,phone}); mDb.close();} }
3、在dao層中寫好對應的方法後,在Activity中調用dao中的方法進行商務邏輯
package com.yuanlp.createdb3;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.yuanlp.createdb3.dao.ContactInfoDao;public class MainActivity extends AppCompatActivity { private EditText mName; private EditText mPhone; private ContactInfoDao mContactInfoDao; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.layout); mName = (EditText) findViewById(R.id.et_name); mPhone = (EditText) findViewById(R.id.et_phone); mContactInfoDao = new ContactInfoDao(this); } /** * 插入資料庫 * @author yuan * @param view */ public void add(View view){ String name=mName.getText().toString().trim(); String phone=mPhone.getText().toString().trim(); if (TextUtils.isEmpty(name)||name==null){ Toast.makeText(this,"姓名不可為空",Toast.LENGTH_SHORT).show(); return; }else if (TextUtils.isEmpty(phone)||phone==null){ Toast.makeText(this,"號碼不可為空",Toast.LENGTH_SHORT).show(); return; } mContactInfoDao.add(name,phone); Toast.makeText(this,"插入資料庫成功",Toast.LENGTH_SHORT).show(); }}
本文出自 “YuanGuShi” 部落格,請務必保留此出處http://cm0425.blog.51cto.com/10819451/1940040
android sqlite資料庫操作