android sqlite数据库 删除数据 where多条件删除数据

android sqlite数据库 删除数据

  • where后跟条件表达式 =,!=,>,<,>=,<=
  • 多条件 and or

直接看代码

    /**
     * 方法删除数据库数据
     */
    public void deletePersonData(PersonModel model)
    {
        //where后跟条件表达式 =,!=,>,<,>=,<=
        //多条件  and or

        //删除数据库里的model数据 因为_id具有唯一性。
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+"=?",new String[]{""+model.getId()});

        //删除数据库里 _id = 1 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+"=?",new String[]{"1"});

        //删除 age >= 18 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_AGE+">=?",new String[]{"18"});

        //删除 id > 5 && age <= 18 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+">?"+" and "+VALUE_AGE +"<=?",new String[]{"5","18"});

        //删除 id > 5 || age <= 18 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+">?"+" or "+VALUE_AGE +"<=?",new String[]{"5","18"});

        //删除数据库里 _id != 1 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+"!=?",new String[]{"1"});

        //删除所有 _id >= 7 的男生
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ISBOY+"=?"+" and "+VALUE_ID+">=?",new String[]{"1","7"});

        //删除所有 _id >= 7 和 _id = 3 的数据
        getWritableDatabase().delete(TABLE_NAME_PERSON,VALUE_ID+">=?"+" or "+VALUE_ID+"=?",new String[]{"7","3"});


    }
  /**
     * sql删除数据库数据
     */
    public void deletePersonDataSql(PersonModel model)
    {
        //条件表达式 =,!=,>,<,>=,<=
        //语法格式 delete from 表名 where 字段 条件表达式 '值'
        //语法示例 delete from person where _id='2'

        //多条件 delete from person where _id>'10' and age>'100'
        //多条件 delete from person where _id>'10' or _id<'5'

        //删除数据库里的model数据 因为_id具有唯一性。
        String sql1 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+"="+"'"+model.getId()+"'";

        //删除数据库里 _id = 1 的数据
        String sql2 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+"="+"'"+1+"'";

        //删除 age >= 18 的数据
        String sql3 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_AGE+">="+"'"+18+"'";

        //删除 id > 5 && age <= 18 的数据
        String sql4 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+">"+"'"+5+"'"+" and "+
                VALUE_AGE+"<="+"'"+18+"'";

        ////删除 id > 5 || age <= 18 的数据
        String sql5 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+">"+"'"+5+"'"+" or "+
                VALUE_AGE+"<="+"'"+18+"'";

        //删除数据库里 _id != 1 的数据
        String sql6 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+"!="+"'"+1+"'";

        //删除所有 _id >= 7 的男生
        String sql7 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+">="+"'"+7+"'"+" and "+
                VALUE_ISBOY +"="+"'"+1+"'";

        //删除所有 _id >= 7 和 _id = 3 的数据
        String sql8 = "delete from "+TABLE_NAME_PERSON+" where "+
                VALUE_ID+">="+"'"+7+"'"+" and "+
                VALUE_ID+"="+"'"+3+"'";


        Log.e(TAG, ""+sql7 );
        getWritableDatabase().execSQL(sql7);
    }

删除表中全部数据

 getWritableDatabase().delete(TABLE_NAME_PERSON, null, null);

删除表

 getWritableDatabase().execSQL(“DROP TABLE  ”+TABLE_NAME_PERSON);

sqlite也无非就创建、增、删、改、查、更新。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,581评论 25 708
  • SQLite是遵守ACID的关系数据库管理系统,它包含在一个相对小的C程序库中。与许多其它数据库管理系统不同,SQ...
    MiracleGl阅读 1,807评论 4 179
  • 什么是SQLite?数据库存储数据的步骤 ●SQLite是一款轻型的嵌入式数据库,它占用资源非常的低,在嵌入式设备...
    飞行的猫阅读 2,538评论 1 7
  • 前段时间工作中接触到了数据库greendao,将项目中所有原生sqlite替换成为了greendao数据库封装框架...
    ya_nn阅读 15,048评论 6 33
  • 缘尽了 你还在我的梦里 还深植在梦的一隅 不忍离去 我隐隐还能感觉到 你轻盈的耳语 和你微笑的样子 只是 你的背影...
    柠檬绿茶2阅读 246评论 0 0