Java 如何将房间自动生成的主键作为外键添加到另一个实体 @实体 数据类产品( @PrimaryKey(自动生成=真) 变量id:Long?=null ) 数据类产品列表( @嵌入式var产品:产品, @关系( parentColumn=“id”, entityColumn=“productId”, 实体=杂货店项目::类 ) 变量课程:列表?=null ) @实体 数据类GroceryItem( @主键 变量id:Int?=null, 变量映像:字符串?=null, 变量价格:字符串?=null )
在这里,我没有任何公共字段,因此如何将这两个表关联起来,或者如何将房间自动生成的id添加为外键有帮助?不,在我的情况下,我没有任何公共字段@stachuok,那么如果没有公共字段,外键应该如何工作?在纯SQL中,让我们暂时略过篇幅吧。我不明白在第二个表中添加一个表字段是什么意思。您可以做的是在第二个实体中创建一个Java 如何将房间自动生成的主键作为外键添加到另一个实体 @实体 数据类产品( @PrimaryKey(自动生成=真) 变量id:Long?=null ) 数据类产品列表( @嵌入式var产品:产品, @关系( parentColumn=“id”, entityColumn=“productId”, 实体=杂货店项目::类 ) 变量课程:列表?=null ) @实体 数据类GroceryItem( @主键 变量id:Int?=null, 变量映像:字符串?=null, 变量价格:字符串?=null ),java,android,sql,database,android-room,Java,Android,Sql,Database,Android Room,在这里,我没有任何公共字段,因此如何将这两个表关联起来,或者如何将房间自动生成的id添加为外键有帮助?不,在我的情况下,我没有任何公共字段@stachuok,那么如果没有公共字段,外键应该如何工作?在纯SQL中,让我们暂时略过篇幅吧。我不明白在第二个表中添加一个表字段是什么意思。您可以做的是在第二个实体中创建一个productid字段,并将其约束为仅从product[id]中获取值,基本上,您需要在GroceryItem中创建一个名为productid的新属性,dao将只使用实体中定义的对象 @
productid
字段,并将其约束为仅从product[id]
中获取值,基本上,您需要在GroceryItem
中创建一个名为productid
的新属性,dao将只使用实体中定义的对象
@Entity
data class Product (
@PrimaryKey(autoGenerate = true)
var id: Long? = null
)
data class ProductList (
@Embedded var products: Product,
@Relation(
parentColumn = "id",
entityColumn = "productId",
entity = GroceryItem::class
)
var courses: List<GroceryItem?>? = null
)
@Entity
data class GroceryItem (
@PrimaryKey
var id: Int? = null,
var image: String? = null,
var price: String?= null
)