Java Android/Ormlite-更新现有或插入(如果不存在)
我有Shops表,ormlite对应的字段声明如下:Java Android/Ormlite-更新现有或插入(如果不存在),java,android,ormlite,insert-update,Java,Android,Ormlite,Insert Update,我有Shops表,ormlite对应的字段声明如下: @DatabaseField(canBeNull = false, columnName = C_SHOP_ID, index=true, id=true) private String shopId; @DatabaseField(dataType = DataType.BYTE_ARRAY, canBeNull = false, columnName = C_SHOP_ICON) private byte[] s
@DatabaseField(canBeNull = false, columnName = C_SHOP_ID, index=true, id=true)
private String shopId;
@DatabaseField(dataType = DataType.BYTE_ARRAY, canBeNull = false, columnName = C_SHOP_ICON)
private byte[] shopIcon;
@DatabaseField(canBeNull = false, columnName = C_SHOP_DETAILS)
private String shopDetails;
@DatabaseField(canBeNull = false, columnName = C_SHOP_NAME)
private String shopName;
@DatabaseField(canBeNull = false, columnName = C_SHOP_SHORT_DESCRIPTION)
private String shopShorDescription;
接下来,这是更新现有行的方法(由主键标识,对吗?):
现在我需要将updateShop方法更改为updateOrInsertShop。因此,如果指定的店铺存在(由shopID标识),则应更新该店铺。否则,应将其作为新行插入。
显然,我可以通过shopID执行select来确定某个商店是否已经存在,然后执行更新
(如上所述)或者创建
(如果不存在)
有更好的方法吗?您可以使用以下方法
createOrUpdate(parameter)
getHelper().getShopItemsDao().createOrUpdate(项目)
createOrUpdate(parameter)