2015-11-29 20 views
0

這裏是我的代碼層...任何人都可以幫助我刪除多個記錄從表中映射到SabbModelPrd數據庫使用等於( 「clientid」,strClientId),它不是主鍵。在此先感謝...我如何刪除數據庫中的數據庫休眠與主鍵以外的條件

public boolean deleteAllServices(String strClientId){ 
    boolean flag = false; 
    try { 
     Session session = sessionFactory.getCurrentSession(); 
     SabbModelPrd sabbModelPrd = (SabbModelPrd) session.get(SabbModelPrd.class, strClientId); 
     if (!StringUtils.isEmpty(sabbModelPrd)) { 
      session.delete(sabbModelPrd); 
      flag = true; 
     } 
    } catch (Exception e) { 

    } 
    return flag; 
} 

這裏與主鍵檢查strClientId PRODUCT_ID

回答

0
public boolean deleteAllServices(String strClientId){ 
    boolean flag = false; 
    try { 
     Session session = sessionFactory.getCurrentSession(); 
     SabbModelPrd sabbModelPrd = (SabbModelPrd) session.createQuery("delete FROM SabbModelPrd where strClientId like'"+strClientId+"'"); 
flag= true; 
    } catch (Exception e) { 
return flag; 
    } 
    return flag; 
} 

我希望它會幫助你

+0

儘管此代碼可以回答這個問題,這將是更好解釋它如何解決問題以及爲什麼要使用它。從長遠來看,僅有代碼的答案是沒有用的。 –

+0

get方法給你一個你作爲參數給出的類的列表(在你的情況下是SabbModelPrd.class),而不是獲得對象列表並從這個列表中刪除它最好使用sql並直接從數據庫中刪除 –

+0

這裏Stackoverflow你可以隨時編輯你的帖子來改善他們。 [標點符號很重要](http://grammar.about.com/od/punctuationandmechanics/a/Punctuation-Matters-12-Examples-Of-The-Finer-Points.htm)。 –