Ⅰ.前言
一天四更,高产似母猪啊。接下来讲解数据库的删除操作。
Ⅱ.正题
1.单条数据删除
Delegator delegator = ctx.getDelegator();
GenericValue genericValue = delegator.makeValue("tableName1");
genericValue.put("PK", "PKValue"); //主键
delegator.removeValue(genericValue);
2.条件多条数据删除
Delegator delegator = ctx.getDelegator();
//查询条件也可以多重,具体参考多条件查询 EntityOperator不止EQUALS,还有NOT_EQUAL、LESS_THAN、LIKE等
EntityCondition entityCondition = EntityCondition.makeCondition("column1", EntityOperator.EQUALS, "value1");
delegator.removeByCondition("tableName", entityCondition);
3.混合条件数据删除
用到了removeAll()方法,如果存在主键,则按照主键删除数据,如果没有主键,则按照传入的值条件删除。如果不传任何参数,则删除全表,我想这个应该不会有人用吧。😄具体逻辑查看源码。
Delegator delegator = ctx.getDelegator();
GenericValue genericValue1 = delegator.makeValue("tableName1");
genericValue1.put("PK", "PKValue"); //主键
genericValue1.set("column1", "value1"); //传入值
GenericValue genericValue2 = delegator.makeValue("tableName2");
genericValue2.put("PK", "PKValue"); //主键
genericValue2.set("column1", "value1"); //传入值
List list = new ArrayList() {{
add(genericValue1);
add(genericValue2);
}};
delegator.removeAll(list);
Ⅲ.结尾
嗨呀,上一天班,划一天水,罪过罪过啊。😜
Comments | NOTHING