Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 要调用的SQLiteDatabase方法,以在";中使用SELECT语句;如果;陈述_Android_Sqlite_Android Sqlite - Fatal编程技术网

Android 要调用的SQLiteDatabase方法,以在";中使用SELECT语句;如果;陈述

Android 要调用的SQLiteDatabase方法,以在";中使用SELECT语句;如果;陈述,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,我想检查我的数据库中是否已经有5行,但是我不能使用execSQL方法调用SELECT,因为它返回void,并且if语句中似乎没有其他内容。那么有没有一个简单的解决办法,或者我必须用另一种方法来解决这个问题 //add a new row to the database public void addProduct(Products product){ SQLiteDatabase db = this.getWritableDatabase(); if(db.execSQL("

我想检查我的数据库中是否已经有5行,但是我不能使用execSQL方法调用SELECT,因为它返回void,并且if语句中似乎没有其他内容。那么有没有一个简单的解决办法,或者我必须用另一种方法来解决这个问题

//add a new row to the database
public void addProduct(Products product){

    SQLiteDatabase db =  this.getWritableDatabase();
    if(db.execSQL("SELECT Count * FROM " + TABLE_PRODUCTS) == 5){
        ContentValues values = new ContentValues();
        values.put(COLUMN_PRODUCTNAME, product.get_productname());
        db.insert(TABLE_PRODUCTS, null, values);
        db.close();
    }
}
试试这个

SQLiteDatabase db = this.getReadableDatabase();   
if(DatabaseUtils.queryNumEntries(db, TABLE_PRODUCTS) == 5){ 
   ContentValues values = new ContentValues(); 
   values.put(COLUMN_PRODUCTNAME, product.get_productname()); 
   db.insert(TABLE_PRODUCTS, null, values); db.close(); 
 }
请参阅此。有关查询,请使用
rawQuery()
。对于命令,请使用
execSQL()
。如果您知道SQL查询和SQL命令之间的区别。