SQLite初识(七)使用ContentValues操作数据库数据

如果说用命令行操作数据库太麻烦了,android为大家提供了一个
ContentValues可以操作数据库


ContentValues values=new ContentValues();
        values.put("name","小明");
        values.put("age",18);
        values.put("address","长沙");
        //第二个参数,如果values为空,要传入一个列名,我们给类名中传入一个null
        //如果values不为空的时候,第二个参数没有意义,我们传入一个null就好
        mSQLiteDatabase.insert("Student",null,values);

这里写图片描述

 ContentValues contentValues=new ContentValues();
        contentValues.put("age",20);
        mSQLiteDatabase.update("Student",contentValues,"_id=?",new String[]{"7"});

这里写图片描述
小明变成了20岁

  mSQLiteDatabase.delete("Student","_id=?",new String[]{"7"});

这里写图片描述
小明就失踪了


数据库基本的增删改查就这样了
赋全部代码,以备后用

public class MainActivity extends AppCompatActivity {
    Button mButton,btn_updata,btn_delete;
    SQLiteDatabase mSQLiteDatabase;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //第四个参数,版本号
        MyOpenHelper myOpenHelper=new MyOpenHelper(getApplicationContext(),"mydb",null,1);
        //两种获取数据库的方法
        mSQLiteDatabase= myOpenHelper.getReadableDatabase();
        // myOpenHelper.getWritableDatabase();
        initView();
        initClick();
    }

    private void initView() {
        mButton=(Button)findViewById(R.id.btn_insert);
        btn_updata=(Button)findViewById(R.id.btn_updata);
        btn_delete=(Button)findViewById(R.id.btn_delete);
    }
    private void initClick() {
        mButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                insertData();
            }
        });
        btn_updata.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                updateData();

            }
        });
        btn_delete.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                deleteData();
            }


        });
    }

    /**
     * 删除数据
     */
    private void deleteData() {
//        String deleteSql="delete from Student Where _id = ?";
//        Object[] objs=new Object[]{"3"};
//        mSQLiteDatabase.execSQL(deleteSql,objs);

        mSQLiteDatabase.delete("Student","_id=?",new String[]{"7"});
    }

    /**
     * 修改数据
     */
    private void updateData() {
//        String updateSql="update Student set name=? ,age=? where _id=?";
//        Object[] objs=new Object[]{"赵四",30,"1"};
//        mSQLiteDatabase.execSQL(updateSql,objs);
        ContentValues contentValues=new ContentValues();
        contentValues.put("age",20);
        mSQLiteDatabase.update("Student",contentValues,"_id=?",new String[]{"7"});
    }

    /**
     * 插入数据
     */
    private void insertData() {
//        String name="李四";
//        int age =21;
//        String address="北京";
//        String insertSql="insert into Student(name,age,address)values('feng',20,'xian')";
//        String insertSql="insert into Student(name,age,address)values('"+name+"',"+age+",'"+address+"')";
//        mSQLiteDatabase.execSQL(insertSql);
//        String insertSql="insert into Student(name,age,address)values(?,?,?)";
//        Object[]objs=new Object[]{"刘",18,"a"};
//        mSQLiteDatabase.execSQL(insertSql,objs);
        ContentValues values=new ContentValues();
        values.put("name","小明");
        values.put("age",18);
        values.put("address","长沙");
        //第二个参数,如果values为空,要传入一个列名,我们给类名中传入一个null
        //如果values不为空的时候,第二个参数没有意义,我们传入一个null就好
        mSQLiteDatabase.insert("Student",null,values);
    }

}
  • 17
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值