问题标签 [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 回答
16096 浏览

java - Hibernate JPA 一对一保存子类实体

PrimaryKeyJoinColumn我在父端使用带注释的一对一关系。现在我想自己保存子实体。

例如,我有Employee并且EmpInfo作为子实体,我需要保存EmpInfo(当然在将父实体的 id 属性设置为它之后)。但是,当使用这种安排时,我会得到下面列出的例外情况......

任何想法为什么休眠不允许这样做?更清楚地说,我的代码如下......

父实体:

子实体:

我尝试保存它的方法是...

任何指针都将不胜感激,至于如何尝试保存子实体?

0 投票
2 回答
2033 浏览

mysql - 将多对多转换为一对一(mysql)

我们更改了数据库模式,并使用连接表 accounts_users 将用户/帐户之间的关系从 1-1 移动到了多对多。

所以我们有账户,用户,accounts_users(user_id和account_id)

我们的数据仍然是 1-1,我们决定后退。所以我需要 sql 向后移动:

迁移我使用:

要搬回来,我试过:

所有这些都给出了某种 sql 错误。我猜它是因为我的 sql 是模棱两可的,我需要先选择某种选择或分钟或类似的东西。

** 需要明确的是,我确定数据中仍然存在 1-1 关系,但我无法弄清楚将现有表中的数据带回原始表的 sql。我正在寻找的是一些工作 sql,它将从 accounts_users 获取数据并将 user_id 放入 account 表中。谢谢,乔尔

0 投票
1 回答
1949 浏览

hibernate - Secondarytables 还是 OnetoOne 关联?

考虑以下“模型”:

我正在尝试查找/创建正确的 Hibernate 映射(使用注释),这样,使用像“来自用户”这样简单的 HQL 查询,它将生成以下 SQL:

我已经尝试了一切,从使用@Secondarytable 到@OneToOne 关联,但我无法让它工作。

我现在得到的最好结果是使用@OneToOne 关联,它生成多个 SQL 查询,其中一个用于获取 USER 中的行,而对于结果集中的每一行,一个来自 USER_EXT 的选择查询。

这是相当无效的。

任何想法 ?

0 投票
3 回答
7583 浏览

java - (1+N) 选择 OnetoOne 关联

考虑以下模型:

执行时:

休眠执行

使用具有特定属性的查询有效(选择 u.firstName、u.userExt.cdpId)。

但是,由于我想要完整的用户实体(“来自用户”),因此休眠会为第一个结果行中的每个结果行生成一个选择。

我不明白,因为默认的获取策略应该是 LAZY 而不是 EAGER。强迫它懒惰并没有解决问题。

0 投票
4 回答
36843 浏览

c# - 如何使用 Entity Framework 4 Code First (POCO) 声明一对一关系

如何使用 Entity Framework 4 Code First (POCO) 声明一对一关系?

我发现了这个问题(Entity Framework 4中的一对一关系),但是答案引用的文章没有用(有一行代码是1-1关系,但没有提到如何定义它)。

0 投票
4 回答
689 浏览

sql - 在 RDBMS 中,当关系是一对一的时,如果两条记录相互指向是否有帮助,或者一个指向已经足够(不需要两个都指向)?

我正在读一本书,它谈到了 a Userhas some more UserDetail,因此UserDetail将有一个user_id指向 Users 表的内容。我有点忘记了,在Users表中有一个字段user_detail_id指向 UserDetail 记录是否有帮助?

在 Ruby on Rails 中也是如此,Users表没有user_detail_id,但UserDetail表有user_id. 而User模型用has_one :user_detail,而UserDetail模型用belongs_to :user

有点道理,如果是一对多关系,那么在“Many”一侧,我们有一个foreign_id指向“One”一侧,但“One”一侧不需要指向“多”的一面,所以看起来一对一的也不需要指向双向,因为一侧就足够了。

0 投票
1 回答
11825 浏览

python - django 一对一关系如何将名称映射到子对象?

除了文档中的一个示例之外,我找不到任何关于 django 如何准确选择可以从父对象访问子对象的名称的文档。在他们的示例中,他们执行以下操作:

因此,在他们的示例中,他们只是调用 p1.restaurant 而不明确定义该名称。Django 假定名称以小写字母开头。如果对象名称包含多个单词,例如 FancyRestaurant,会发生什么情况?

旁注:我正在尝试以这种方式扩展 User 对象。这可能是问题吗?

0 投票
1 回答
122 浏览

nhibernate - 如何在 nhibernate 中设置一对一的关系?(目前不返回异物)

我有一个用户,其中一些是员工。这是一对一的关系,并非所有用户都是员工。

当我得到一个用户时,它似乎没有带回员工信息,它只是将其标记为空。我以为我已经了解了 nhibernate,但我尝试在映射文件上使用这么多属性,但没有让它工作。关于我做错了什么的任何想法或指示?

用户等级:

用户映射:

员工等级:

员工映射:

0 投票
1 回答
447 浏览

nhibernate - 休眠继承

我有两张桌子:

  • 通话记录
  • crm_call_records

call_records 不知道 crm_call_records 及其对应的类存在于不同的程序集中。因此,我无法在 call_records 的映射文件中添加子类映射。

crm_call_records 有一个名为 call_record_id 的列,其中包含 call_records 中 PK 的值。

映射文件应该是什么样子?

0 投票
2 回答
4652 浏览

nhibernate - NHibernate 一对一映射,非主键

无法让 NHibernate 生成正确的查询。它一直使用我为一对一关系加入的两个表的主键,我不知道如何在其中一个表中指定外键。

所以 tableA 应该使用 tableA.bID = tableB.bID 加入 tableB。如何在 tableA 的映射中指定这个?我正在使用 tableA 类从 tableA 中检索一行,从 tableB 中检索一行,因为它是真正的一对一关系。

NHibernate 使用 tableA.aID = tableB.bID 生成连接表的 sql,这是错误的。

这不起作用: