我在Android应用中使用Room.一个表(stock_move)包含几个外键.在某些情况下,我需要插入一个没有FK(locationDestId)的stock_move.在这种情况下,SQLite引发错误:
io.reactivex.exceptions.OnErrorNotImplementedException:外键约束失败(代码19)
有我的实体:
@Entity(tableName = "stock_move",
foreignKeys = {
@ForeignKey(
entity = LocationEntity.class,
parentColumns = "id",
childColumns = "location_id",
onDelete = CASCADE
),
@ForeignKey(
entity = LocationEntity.class,
parentColumns = "id",
childColumns = "location_dest_id",
onDelete = CASCADE
),
@ForeignKey(
entity = ProductEntity.class,
parentColumns = "id",
childColumns = "product_id",
onDelete = CASCADE
),
@ForeignKey(
entity = UomEntity.class,
parentColumns = "id",
childColumns = "uom_id",
onDelete = CASCADE
)
}
)
public class StockMoveEntity {
@PrimaryKey(autoGenerate = true)
private int id;
private String name; …Run Code Online (Sandbox Code Playgroud)