gpt4 book ai didi

android - 如何从 ORMLITE 中删除记录?

转载 作者:IT老高 更新时间:2023-10-28 22:04:45 26 4
gpt4 key购买 nike

我需要从 ORMLite 数据库中删除一条记录我可以使用以下方式按 id 删除一条记录

@Override
public void Delete(int id) throws SQLException {
this.dao.deleteById(id);
}

但是如果我必须从同一个表中删除一条记录而不是按 id 而是按名称或任何其他字段怎么办我想要类似的东西

public void Deletefromcanteen(String name,MealType mealtype) {
this.dao.deletebyName(name);
}

我应该使用 querybuilder 编写什么查询来删除 name = name 和 mealtype = say (lunch) 的记录

我在我的数据库助手类中尝试了类似的方法

public  void deletefromcanteen(int id, String mealtype) {
try {
Dao<CanteenLog, Integer> canteenDao = getCanteen();
DeleteBuilder<CanteenLog, Integer> deleteBuilder = canteenDao
.deleteBuilder();
deleteBuilder.where().eq("user_id", id).and().eq("meal", mealtype);
canteenDao.delete(deleteBuilder.prepare());
} catch (Exception e) {
...
}
}

最佳答案

deleteBuilder.where().eq("FIELD_NAME", arg);
deleteBuilder.delete();

更新:

例如:

//Get helper
DatabaseHelper helper = OpenHelperManager.getHelper(App.getContext(), DatabaseHelper.class);

//get dao
Dao dao = helper.getDao(YOUR_CLASS.class);

//delete elements from table in field by arg
DeleteBuilder<CanteenLog, Integer> deleteBuilder = dao.deleteBuilder();
deleteBuilder.where().eq("FIELD_NAME", arg);
deleteBuilder.delete();

祝你好运!

关于android - 如何从 ORMLITE 中删除记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12108195/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com