从Android SqLite中删除Colums中的行

Sum*_*mar -2 sqlite android delete-row

我想从数据库中删除一行,我尝试了删除行的不同内容,但数据库值没有删除,也没有显示异常.我必须从两列中删除行:

  public void removeSingleContact_new(String title,String titles) {
    //Open the database
    SQLiteDatabase database = this.getWritableDatabase();

    //Execute sql query to remove from database
    //NOTE: When removing by String in SQL, value must be enclosed with ''
    database.execSQL("DELETE FROM " + TABLE_Languages + " WHERE " + KEY_SID + "= '" + title + "'" + "and" + "" + KEY + "= '" + titles + "'" );

    //Close the database
    database.close();
}
Run Code Online (Sandbox Code Playgroud)

KEY_SID和KEY是我的列名.

DatabaseHandler.class

public class DataBaseHandlers extends SQLiteOpenHelper {
private static final int DATABASE_VERSION = 1;

private static final String DATABASE_NAME = "Twilio_Configs";

// table name
private static final String TABLE_Languages = "Config_new";
values_new lang;

// Table Columns names
private static final String KEY_SID = "id";
private static final String KEY = "name";

public DataBaseHandlers(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}

// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
    String CREATE_CONTACTS_TABLE;

    CREATE_CONTACTS_TABLE = "create table " + TABLE_Languages + "("
            + KEY_SID + " integer primary key autoincrement, " + KEY
            + " text not null);";
    db.execSQL(CREATE_CONTACTS_TABLE);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    // Drop older table if existed
    db.execSQL("DROP TABLE IF EXISTS " + TABLE_Languages);
    onCreate(db);
}

void add(values_new lang) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY, lang.getValue()); // Contact Name

    // Inserting Row
    db.insert(TABLE_Languages, null, values);
    db.close(); // Closing database connection
}

// Getting single contact
values_new getContact(int id) {
    SQLiteDatabase db = this.getReadableDatabase();

    Cursor cursor = db.query(TABLE_Languages, new String[] { KEY_SID,
                    KEY }, KEY_SID + "=?", new String[] { String.valueOf(id) },
            null, null, null, null);
    if (cursor != null) {
        cursor.moveToFirst();
    }
    if( cursor != null && cursor.moveToFirst() ) {
         lang = new values_new(Integer.parseInt(cursor.getString(0)),
                cursor.getString(1));
}return lang;}

public long getProfilesCount() {
    SQLiteDatabase db = this.getReadableDatabase();
    long cnt  = DatabaseUtils.queryNumEntries(db, TABLE_Languages);
    db.close();
    return cnt;
}

// Getting All data
public List<values_new> getAllvalues() {
    List<values_new> languageList = new ArrayList<values_new>();
    // Select All Query
    String selectQuery = "SELECT  * FROM " + TABLE_Languages;

    SQLiteDatabase db = this.getWritableDatabase();
    Cursor cursor = db.rawQuery(selectQuery, null);

    // looping through all rows and adding to list
    if (cursor.moveToFirst()) {
        do {
            values_new lang = new values_new();
            lang.setId(Integer.parseInt(cursor.getString(0)));
            lang.setValue(cursor.getString(1));
            languageList.add(lang);
        } while (cursor.moveToNext());
    }

    return languageList;
}
// Updating single record
public int update(values_new lang) {
    SQLiteDatabase db = this.getWritableDatabase();

    ContentValues values = new ContentValues();
    values.put(KEY, lang.getValue());

    // updating row
    return db.update(TABLE_Languages, values, KEY_SID + " = ?",
            new String[] { String.valueOf(lang.getId()) });
}
public void removeSingleContact_new(String title,String titles) {
    //Open the database
    SQLiteDatabase database = this.getWritableDatabase();

    //Execute sql query to remove from database
    //NOTE: When removing by String in SQL, value must be enclosed with ''
    database.execSQL("DELETE FROM " + TABLE_Languages + " WHERE " + KEY_SID + "= '" + title + "'" + " AND " + "" + KEY + "= '" + titles + "'" );

    //Close the database
    database.close();
}
Run Code Online (Sandbox Code Playgroud)

values_new:

public class values_new {

private long id;
private String value;

public values_new() {
    super();
}

public values_new(String value) {
    super();
    this.value = value;
}

public values_new(long id, String value) {
    super();
    this.id = id;
    this.value = value;
}

public long getId() {
    return id;
}

public void setId(long id) {
    this.id = id;
}

public String getValue() {
    return value;
}

public void setValue(String value) {
    this.value = value;
}}
Run Code Online (Sandbox Code Playgroud)

并使用这样的.:

 values_new singleContact_new = dbs.getContact(2);
        values_new singleContacts_news = dbs.getContact(1);

        number_sid = singleContact_new.getValue();
        twilio_number_db = singleContacts_news.getValue();
dbs.removeSingleContact_new(twilio_number_db,number_sid);
Run Code Online (Sandbox Code Playgroud)

请使用和建议我在Sqlite中删除命令.谢谢.

Int*_*iya 5

纠正你的查询

("DELETE FROM " + TABLE_Languages + " WHERE " + KEY_SID + "= '" + title + "'" + " AND " + "" + KEY + "= '" + titles + "'" );
Run Code Online (Sandbox Code Playgroud)