问题标签 [one-to-one]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
23398 浏览

hibernate - @OneToOne 和 @JoinColumn,自动删除空实体,可行吗?

我有两个实体,带有以下 JPA 注释:

Owner 和 Data 是一一对应的,拥有方是 Owner。当我执行时出现问题:owner.setData(null) ; ownerDao.update(owner) ; “所有者”表的 Data_id 变为 null ,这是正确的。

但“数据”行不会自动删除。我必须编写另一个 DataDao 和另一个服务层来包装这两个操作( ownerDao.update(owner) ; dataDao.delete(data); )

当拥有所有者将其设置为 null 时,是否可以自动删除数据行?

0 投票
3 回答
230 浏览

mysql - In a One to One relationship should i drop one of the table's id column?

I have the following 2 tables in MySQL: Customer(Id, Firstname, Lastname...) Bonus(Id, CustomerId, Value, ...)

The relation is One-To-One, every customer has only one bonus.(the CustomerId is unique in the Bonus Table)

Q: Should I drop the Id column of the Bonus table? (I want to know why or why not)

0 投票
1 回答
156 浏览

hibernate - Hibernate 集合获取最优

我有以下结构

店铺
返利返利
元数据返利
佣金

所以,关系是这样的——

Store -> Rebate 是一对多关系 Rebate -> RebateMetadata 是一对一映射 Rebate -> RebateCommission 是一对一映射

我的查询是加载所有商店。并使用它加载所有回扣、元数据和佣金。

我使用的 HQL 是:

从商店中选择商店作为商店;

我希望以尽可能少的 SQL 加载整个图表。为了防止 n+1 选择问题,我在 Store-> Rebate 之间使用子选择获取。

但是,为了获取 RebateMetadata 和 RebateCommission,我看到多个单独的选择(带有连接)被触发。我应该怎么做才能最小化这种情况?

此外,我打开了二级缓存,但关闭了 QueryCache。

0 投票
1 回答
1250 浏览

sql - Sql Server 和 LINQ 中的一对一关系

我有一个用户表和一个配置文件表。它们分开的原因是因为可以在用户注册网站之前输入有关用户的信息。我遇到的问题是,当我在 Sql Server 中设置关系时,它想要创建一对多关系。我看不出有什么办法可以改变这一点。

0 投票
3 回答
2304 浏览

grails - 在grails中有一个关系和删除

我应该如何删除 grails 中 hasOne 关系中的子对象,例如:

我尝试通过两种方式删除子对象

我总是得到相同的异常 Deleted object 以两种方式被级联重新保存。还有一个我有任何用于hasOne的动态方法(比如hasMany的addTo和removeFrom)吗?有什么帮助吗?

0 投票
2 回答
6655 浏览

java - 为什么休眠执行两个查询以急切加载@OneToOne 双向关联?

我有一个实体 A,它有一个 B 实体,而 B 有一个带有 @OneToOne 双向关联的 A。

现在,当我找到所有 A 记录时,hibernate 在 B 上使用左外连接执行两个查询,如下所示:

第一次查询加载 A 和 B 字段是可以的,但是为什么要执行第二次查询来重新加载 A?我认为这个查询在 B 中加载了 A 内容,但是这个 A 显然是包含 B 的 A ...所以它已经加载了第一个查询,不是吗?

- 编辑 -

实体 A:

实体 B:

就是这种情况,A 上的 findAll 需要两个查询……为什么?

0 投票
1 回答
1069 浏览

.net - 使用复合键的一对一关系映射

我有一个这样的数据库:我的问题是“如何使用城堡活动记录映射这个数据库?”

alt text http://cA4.upanh.com/11.396.15558077.LNS0/onetoonewithcompositekey.jpg 我试过这个代码:

MessageOfCampaign:

信息:

但我得到了错误:

损坏的列映射:MessageOfCampaign.id of:IMobileMarketing.Models.Message,类型组件 [MessageID,CampaignID] 需要 2 列,但 1 已映射

0 投票
8 回答
35820 浏览

python - 检查 Django 中的 OneToOneField 是否为 None

我有两个这样的模型:

如果用户有 Type1 或 Type2 配置文件,我需要做一些事情:

但是,对于没有 type1 或 type2 配置文件的用户,执行这样的代码会产生以下错误:

如何检查用户的个人资料类型?

谢谢

0 投票
3 回答
683 浏览

database - 在数据库中建模“一对一”关系与建模“继承”相同吗?

我想知道在建模一对一关系和继承关系(Table-Per-Type)之间是否有区别在这两种情况下,我们都添加了一个具有唯一约束的外键,或者有时 FK 是 PK 的一部分

在我看来,表结构是相同的,但也许我遗漏了一些东西。

提前致谢。

0 投票
1 回答
361 浏览

hibernate - Hibernate+JPA 一对一关系

我有这样的 OneToOne 关系:-

这里 person 表的 id 是自动生成的,但 Others 表的 id 是外键。我怎样才能链接这两个表。