弃用警告

时间:2019-02-11 09:20:57

标签: android database sqlite deprecated

正如标题所暗示的,我在尝试编译时收到不赞成使用的警告。我分析了我的代码,并在数据库站点上收到以下2个错误。所以我假设这是错误所在?

第一个错误出现在这里。在FROM后面有一个红色标记,错误显示为

  

(表或子查询)预期,文件意外结束。

   if (filter.equals("")) {
        query = "SELECT  * FROM " + table_name;
    }else {

下面是第二个错误。

  

(单表语句表)预期文件意外结束

SQLiteDatabase db = this.getWritableDatabase();
db.execSQL("DELETE FROM "+ table_name);

2 个答案:

答案 0 :(得分:0)

您面临的问题在db.execSQL行中,请尝试这样做,它不会向您显示已弃用的警告

String query = "Select * FROM " +TABLE_NAME+ " WHERE "+ROUTE_ID+ "= " + RouteID;
    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery(query, null);
    setAlarmDynamic setalarmDynamics  = new setAlarmDynamic();

    if (cursor.moveToFirst())

        db.delete(TABLE_NAME, ROUTE_ID + "=?",
                new String[] {
            String.valueOf(setalarmDynamics.getRouteId())

        });
        cursor.close();
    }

    db.close();

答案 1 :(得分:-2)

如果要删除整个表,请使用:

SQLiteDatabase db = this.getWritableDatabase();
db.execSQL("DROP TABLE IF EXISTS " + table_name);