Android 数据库Sqlite的使用(2)

https://blog.csdn.net/tdl081071tdy/article/details/88377267  Android 数据库Sqlite的使用(1)

紧接着上一篇文章 现在我们开始学习如何修改以及删除和插入

首先我们在布局文件中插入三个按钮 

 <Button
            android:text="插入数据"
            android:id="@+id/btn_insert"
            android:layout_weight="1"
            android:onClick="click"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

<Button
            android:text="修改数据"
            android:id="@+id/btn_update"
            android:layout_weight="1"
            android:onClick="click"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

 <Button
            android:text="删除数据"
            android:id="@+id/btn_del"
            android:layout_weight="1"
            android:onClick="click"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

然后 我们在Activity中创建click方法

 public void click(View view){
        
    switch(view.getId()){
        case R.id.btn_insert:
        break;

        case R.id.btn_update:
        break;

        case R.id.btn_del:
        break;
    }
}

现在我们为数据库插入一条数据 我们在insert按钮的点击事件中写入如下代码

                case R.id.btn_insert:  
                  SQLiteDatabase db = helper.getWritableDatabase();
                    /**
                     * 第一个参数为 表名 第二个参数设置为null 第三个参数为一个string类型的hashmap集合
                     */
                    ContentValues values = new ContentValues();
                    values.put("name","张三");
                    values.put("age",20);
                    long result=db.insert(“person”,null,values);
                    if(result>0)
                        Toast.makeText(this,"插入成功",Toast.LENGTH_SHORT).show();
                    else
                        Toast.makeText(this,"插入失败",Toast.LENGTH_SHORT).show();
                    db.close();
                break;

我们往数据表中插入 张三 20 这条数据 诺返回的值大于0 说明插入成功 否则插入失败 这里需要注意 插入后要记得关闭数据库

现在我们修改数据库中的 张三 将其改名为张四 在btn_update按钮下写入如下代码

                    db = helper.getWritableDatabase();
                    /**
                     * String table, ContentValues values, String whereClause, String[] whereArgs
                     * 表名    表示建为string类型的hashmap  表示为当前修改的条件  表示修改条件的占位符
                     */
                    ContentValues cv = new ContentValues();
                    cv.put("name","张四");//1 为修改的字段 2为修改后的字段值
                    int update = db.update("person",cv,
                            "name=?",new String[]{"张三"});
                    if (update>0){
                        log.e("true","删除成功");
                    }

这里需要注意的是 其中cv的值是要修改的字段和修改后的字段值 至于条件我们是写下面的update中的  其中"name=?"表示的是用name做为修改条件 问号是占位符   而后面数组中值的则是占位符的取值   也就是将name为张三的字段改成张四 ,如果修改成功则返回的值将大于0

现在我们来删除张四这条数据 在btn_delete的点击事件中写入如下代码

                     db = helper.getWritableDatabase();
                    /**
                     * String table, String whereClause, String[] whereArgs
                     * 表名           删除条件            删除的条件的占位符
                     */
                    int delete = db.delete("person", "name=?", new String[]{"张四"});
                    db.close();
                    if(delete>0){

                        log.e("true","删除成功");
                    }

同样 删除成功将返回大于0的整数

好了 到这里CUD操作都完成 下一篇我们学习如何查询数据

https://blog.csdn.net/tdl081071tdy/article/details/88377846  Android 数据库Sqlite的使用(3)

猜你喜欢

转载自blog.csdn.net/tdl081071tdy/article/details/88377515