Android 简单数据库(增删改查)

 

 

 

 

复制代码

 

 

package net.bwie.localdata;import android.content.ContentValues;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.Toast;import net.bwie.localdata.sqlite.DBHelper;public class MainActivity extends AppCompatActivity implements View.OnClickListener {    protected Button mInsertBtn;    protected Button mDeleteBtn;    protected Button mUpdateBtn;    protected Button mQueryBtn;    private DBHelper mHelper;    private SQLiteDatabase mDatabase;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        super.setContentView(R.layout.activity_main);        initView();        mHelper = new DBHelper(this);        mDatabase = mHelper.getWritableDatabase();    }    private void initView() {        mInsertBtn = (Button) findViewById(R.id.insert_btn);        mInsertBtn.setOnClickListener(MainActivity.this);        mDeleteBtn = (Button) findViewById(R.id.delete_btn);        mDeleteBtn.setOnClickListener(MainActivity.this);        mUpdateBtn = (Button) findViewById(R.id.update_btn);        mUpdateBtn.setOnClickListener(MainActivity.this);        mQueryBtn = (Button) findViewById(R.id.query_btn);        mQueryBtn.setOnClickListener(MainActivity.this);    }    @Override    public void onClick(View view) {        if (view.getId() == R.id.insert_btn) {            insertData();        } else if (view.getId() == R.id.delete_btn) {            deleteData();        } else if (view.getId() == R.id.update_btn) {            updateData();        } else if (view.getId() == R.id.query_btn) {            queryData();        }    }    // 表名    // null。数据库如果插入的数据为null,会引起数据库不稳定。为了防止崩溃,需要传入第二个参数要求的对象    // 如果插入的数据不为null,没有必要传入第二个参数避免崩溃,所以为null    // 插入的数据    private void insertData() {        ContentValues values = new ContentValues();        values.put(DBHelper.NAME, "鹿晗");        values.put(DBHelper.AGE, 17);        mDatabase.insert(DBHelper.TABLE_NAME, null, values);        Toast.makeText(this, "插入成功", Toast.LENGTH_SHORT).show();    }    // 表名    // 删除条件    // 满足删除的值    private void deleteData() {        int count = mDatabase.delete(DBHelper.TABLE_NAME, DBHelper.NAME + " = ?", new String[]{"鹿晗"});        Toast.makeText(this, "删除数量:"+count, Toast.LENGTH_SHORT).show();    }    // 表名    // 修改后的数据    // 修改条件    // 满足修改的值    private void updateData() {        ContentValues values = new ContentValues();        values.put(DBHelper.NAME, "小茗同学");        values.put(DBHelper.AGE, 18);        int count = mDatabase                .update(DBHelper.TABLE_NAME, values, DBHelper.NAME + " = ?", new String[]{"鹿晗"});        Toast.makeText(this, "修改成功:" + count, Toast.LENGTH_SHORT).show();    }    // 表名    // 查询字段    // 查询条件    // 满足查询的值    // 分组    // 分组筛选关键字    // 排序    private void queryData() {        Cursor cursor = mDatabase.query(DBHelper.TABLE_NAME,                new String[]{DBHelper.NAME, DBHelper.AGE},                DBHelper.AGE + " > ?",                new String[]{"16"},                null,                null,                DBHelper.AGE + " desc");// 注意空格!        int nameIndex = cursor.getColumnIndex(DBHelper.NAME);        int ageIndex = cursor.getColumnIndex(DBHelper.AGE);        while (cursor.moveToNext()) {            String name = cursor.getString(nameIndex);            String age = cursor.getString(ageIndex);            Log.d("1507", "name: " + name + ", age: " + age);        }    }}

复制代码

 

 

 

 

 

复制代码

package net.bwie.localdata.sqlite;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;public class DBHelper extends SQLiteOpenHelper {    // 数据库文件名    public static final String DB_NAME = "my_database.db";    // 数据库表名    public static final String TABLE_NAME = "t_person";    // 数据库版本号    public static final int DB_VERSION = 1;    public static final String NAME = "name";    public static final String AGE = "age";    public DBHelper(Context context) {        super(context, DB_NAME, null, DB_VERSION);    }    // 当数据库文件创建时,执行初始化操作,并且只执行一次    @Override    public void onCreate(SQLiteDatabase db) {        // 建表        String sql = "create table " +                TABLE_NAME +                "(_id integer primary key autoincrement, " +                NAME + " varchar, " +                AGE + " varchar"                + ")";        db.execSQL(sql);    }    // 当数据库版本更新执行该方法    @Override    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {    }}

更多相关文章

  1. android 利用socket 发送Json数据demo
  2. android中IO操作数据总结
  3. Android sd卡读取数据库实例代码
  4. Android的ListView,数据更新后自动scroll到底部。
  5. Android菜鸟日记10 SQLite 数据库
  6. android 竖屏activity跳转横屏activity返回时数据消失
  7. android中ListView控件&&onItemClick事件中获取listView传递的数
  8. android intent 传递各种结构数据
  9. android左右滑动加载分页以及动态加载数据

随机推荐

  1. 聊一聊Android的消息机制
  2. Android 的属性系统(翻译)
  3. android智能聊天机器人
  4. Android 驱动和系统开发 1. 一个简单的例
  5. android Matrix处理图片原理及方法整理
  6. 聊聊 Android 开发的现状和思考
  7. 直播软件源码处理Android音视频篇技术简
  8. Android 性能典范-线程
  9. Android艺术探究二次学习笔记(三)
  10. Android应届生,靠什么拿到的今日头条、携