在没有任何特殊数据库顺序的情况下尝试创建实体时,实体必须至少有 1 个字段用 PrimaryKey 注释

An entity must have at least 1 field annotated with PrimaryKey when trying to create an entity without any special database orders

我的项目中有以下实体 -

@Entity(tableName = "query_table")
public class QueryModel {


    public String ID;

    private String vendorName;

    private String productName;

    private String lateTimeUpdated;

    public QueryModel(@NonNull String ID, String vendorName, String productName, String lateTimeUpdated) {
        this.ID = ID;
        this.vendorName = vendorName;
        this.productName = productName;
        this.lateTimeUpdated = lateTimeUpdated;
    }

    public String getID() {
        return ID;
    }

    public void setID(String ID) {
        this.ID = ID;
    }

    public String getVendorName() {
        return vendorName;
    }

    public void setVendorName(String vendorName) {
        this.vendorName = vendorName;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public String getLateTimeUpdated() {
        return lateTimeUpdated;
    }

    public void setLateTimeUpdated(String lateTimeUpdated) {
        this.lateTimeUpdated = lateTimeUpdated;
    }
}

我想要实现的是一个实体,它完全从服务器接收它的值,这意味着我不需要任何自动增量 - 我会自己处理这个实体。

但是当尝试使用以下 class 启动我的应用程序时,我收到错误 -

An entity must have at least 1 field annotated with @PrimaryKey

我该如何解决?

如图所示here您应该使用注解@PrimaryKey

定义一个主键
@PrimaryKey
public int id;

或者,另一个像这样的例子

@Entity(primaryKeys = {"firstName", "lastName"})
public class User {
    public String firstName;
    public String lastName;
}