程序包A有一个桌面Y和一个MonitorZ。程序包B有一个桌面Y和 两个 MonitorZ。我想在由实体设计器创建的数据库中表示该关系。
StandardPackage
和之间StandardMachine
(具有台式机,显示器,笔记本电脑等)之间存在多对多关系。每个季度,我们都会更新包裹,客户下订单。他们选择一个包,下订单时,该包StandardMachines
会将其数据(类型,品牌,型号等)转储到新创建的中Machines
。
问题出在实体设计器为StandardPackageStandardMachine
关系创建联结表的方式上。联结表具有两列,分别对应于关系两端的记录的ID,联结表的主键是这两个ID的组合。因此,对于第一段中的示例,如果程序包A的Id为1,程序包B的Id为2,桌面Y的Id为1,监视器Z的Id为2,
StandardPackageId | StandardMachineId
------------------|------------------
1 | 1
1 | 2
2 | 1
2 | 2
2 | 2
但显然您不能拥有两个2/2记录。
有没有一种好方法可以告诉Entity Designer我打算做什么,以便它将为联结表创建一个自动递增的主键列?还是我必须手动创建联结表并自己处理关联?
顺便说一句,如果有人甚至知道如何改写我的问题标题,请这样做。
只是一个关于设计Firestore模式的简单问题: 我知道你必须使用正确的工具来完成这项工作,Firestore不应该是一个关系数据库,但有没有建议的技术来建模多对多关系? Ex: 我想建立一个物业管理应用程序 公司拥有包含单元的房产。这里的层次结构很简单。 因此,随着时间的推移,租户将租用多个单元,随着时间的推移,每个单元将有许多租户...所有这些都包含在将一个单元与一个或多个租户联系在一起的租
我很难模拟这种情况。我在设计一个基于位置的优惠券系统。用户可以定义区域和优惠,然后将每个优惠关联到多个区域。此外,每个区域可以有多个优惠。所以zone和offer有很多对很多的关系。用户实体拥有这两个实体。只有在同一用户拥有区域和优惠的情况下,才能将它们关联起来。图表会很有帮助。多谢了。
我有一个JPA实体(人)与其他实体(地址)有多对一的关系。在一个对象可以被系统使用之前,这个对象必须得到主管的批准。我将原始实体存储为byte[]并对“工作”实体进行更改,并将其存储在数据库中。如果这些更改不被批准,我必须恢复原始状态。因此,我将存储的原始数据从byte[]中转换出来,并使用实体管理器将其合并到数据库中。所有的工作都很好,但是如果一个新的地址实体已经添加到“工作”的人,在合并还原的
比如我们要关联用户和角色之间的关系,就要用到多对多。多对多需要一张中间表来做关联。 定义 多对多关联会用到的注解: @ManyToMany、@JoinFromMiddle、@JoinToMiddle、@AutoSelect、@AutoInsert、@AutoUpdate、@AutoSave、@AutoDelete 如 imi-demo 中代码所示,类定义了一个$userRole属性和$role属性
多对多关联 关联定义 例如,我们的用户和角色就是一种多对多的关系,我们在User模型定义如下: <?php namespace app\index\model; use think\Model; class User extends Model { public function roles() { return $this->belongsToMany('R
我的实体之间存在多对多关系:和。当我想在我的Symfony项目中将添加到订单时,我总是收到以下错误消息: 属性“suppliers”在类“Acme\AppBundle\Entity\PurchaseOrder”中不是公共的。也许您应该创建方法“setSuppliers()”? 当我自己在Entity中创建函数时: 我收到以下错误消息: 可捕获的致命错误:传递给Doctrine\通用\集合\Arra