簡體   English   中英

如何在一個查詢中刪除多個表?

[英]How to delete multiple tables in one query?

我需要使用相同的ID刪除兩個表。 到目前為止,我正在使用此方法:

public Integer deleteSplitMondayByID (String ID){
        SQLiteDatabase database = this.getWritableDatabase();
        return database.delete(TABLE_NAME, "ID = ?", new String[]{ID});
    }

我如何在那增加一張桌子? 我已經嘗試過類似的東西

(TABLE_NAME, TABLE_NAME2 "ID = ?", new String[]{ID})
(TABLE_NAME + " , " + TABLE_NAME2 "ID = ?", new String[]{ID})
(TABLE_NAME + " UNION " + TABLE_NAME2 "ID = ?", new String[]{ID})

但是我無法刪除它們。 那么,我該怎么做呢?

如前所述-您不能在單個語句中從兩個表中刪除,尤其是當它在Java庫中抽象時。 嘗試這樣的事情:

public Integer deleteSplitMondayByID (String ID){
  int delcount = 0;
  SQLiteDatabase database = this.getWritableDatabase();
  database.beginTransaction();
  try 
    {
      delcount += database.delete(TABLE_NAME, "ID = ?", new String[]{ID});
      delcount += database.delete(TABLE_NAME2, "ID = ?", new String[]{ID});
      database.setTransactionSuccessful();
    } finally {         
      database.endTransaction();
    }
  return delcount;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM