我房间里有一个实体
@Entity(foreignKeys ={
@ForeignKey(entity = Label.class, parentColumns = "_id", childColumns = "labelId", onDelete = CASCADE),
@ForeignKey(entity = Task.class, parentColumns = "_id", childColumns = "taskId", onDelete = CASCADE)
})
public class LabelOfTask extends Data{
@ColumnInfo(name = "labelId")
private Integer labelId;
@ColumnInfo(name = "taskId")
private Integer taskId;
}
此实体的SQL语法如下所示
CREATE TABLE `LabelOfTask` (
`_id` INTEGER PRIMARY KEY AUTOINCREMENT,
`labelId` INTEGER,
`taskId` INTEGER,
FOREIGN KEY(`labelId`) REFERENCES `Label`(`_id`) ON UPDATE NO ACTION ON DELETE CASCADE ,
FOREIGN KEY(`taskId`) REFERENCES `Task`(`_id`) ON UPDATE NO ACTION ON DELETE CASCADE
);
如果我想将以下约束条件追加到表的自动生成SQL模式中,我需要在实体类中进行何种更改或注释?
unique (labelId, taskId)
最终,我想使用room库使表格(或实体)中的labelId和taskId的组合唯一。