Java Android/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

我有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[] 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)