Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android SQLite Delete Row From Table Where 2 Arguments

This is my database :

// the names for database columns
    public final static String TABLE_NAME = "vremena";
    public final static String TABLE_COLUMN_ID = "_id";
    public final static String TABLE_COLUMN_ONE = "dan";
    public final static String TABLE_COLUMN_TWO = "vrijeme";

I'm trying to create a method which takes 2 arguments and deletes a selected row from the database :

public void delete(String dan, int vrijeme){
    db.delete(TABLE_NAME, TABLE_COLUMN_ONE+"="+dan, TABLE_COLUMN_TWO+"="+vrijeme);
    }

Am getting this error :

The method delete(String, String, String[]) in the type SQLiteDatabase is not applicable for the arguments (String, String, String)

I know I'm doing something wrong within delete method.

like image 239
user1880779 Avatar asked Mar 20 '13 12:03

user1880779


1 Answers

Have a look at the API Docs:

http://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html

delete(String table, String whereClause, String[] whereArgs)
Convenience method for deleting rows in the database.

You should do this:

public void delete(String dan, int vrijeme){
    db.delete(TABLE_NAME, 
            TABLE_COLUMN_ONE + " = ? AND " + TABLE_COLUMN_TWO + " = ?", 
            new String[] {dan, vrijeme+""});
}
like image 198
Ridcully Avatar answered Sep 17 '22 18:09

Ridcully