问题标签 [many-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.
hibernate - Hibernate:合并与多对一对象传递工作吗?
嗨,我知道并在合并之前进行测试会将对象重新附加回会话,以防止当对象不再处于会话中时出现延迟初始化异常。
a.) 所以我有几个问题。
如果我付款-> 客户(在多对一的单向关系中)并且我愿意
支付支付 = Payment.class.cast(session.merge(oldPayment));
客户对象是否也会重新附加到会话中,或者我是否必须为客户进行另一个合并调用。
b.) 如果付款--> 客户(多对一双向关系)会发生什么。比会发生什么。
c.)如果我有超过三个层次的关系呢?
例如:酒店 --> 付款 --> 客户。
如果我做 Hotel hotel = Hotel.class.cast(session.merge(unmergeHotel)),付款和客户对象也会合并到会话中吗?
谢谢
hibernate - 休眠多对一注释和删除错误
我有这个带有注释的bean(显示相关的):
全部映射到 mySQL。
如果我删除其中一个将 prodottoDiRiferimento 属性设置为 null 并且其他 bean 具有 prodottoDiRiferimento 属性的 bean,我会得到:
我想要的是所有指向已删除的具有 prodottoDiRiferimento 属性的 bean 也将被删除。
怎么做?
oracle - 休眠 ManyToOne 和 OneToMany i 一个实体
我有 3 个表 University(id,name)、Group(id,name,university_id)、Student(id,name,number,group_id)。一所大学有很多小组,一个小组有很多学生。
我的 POJO 如下所示:
我的助手类:
我得到
当尝试保存或显示某些东西时。请帮忙。
mysql - MySQL ORDER BY 被 GROUP BY 忽略(有效的解决方法?)
我觉得有一个简单的解决方案——我在 Stack Overflow 上查看了其他问题,但它们似乎效率低下,或者我做错了。
这是我正在使用的表格的简化版本。
存在多对一关系——每个对象有多个对象值(每个对象平均有 150 个对象值)
我想根据 object_group_id 获取每个 object_id 的最后一个对象值(由 date_time 字段确定)。
当前查询:
这会拉回所有记录——如果我执行 GROUP BY a。object_id
然后 ORDER BY 被忽略
我尝试了一系列变体——我很抱歉,因为我知道这是一个常见问题,但尝试其他解决方案到目前为止还没有奏效。任何帮助将不胜感激。
一些解决方案在大约 70 秒后返回结果——这是一个大型系统,因此需要更快一些。
nhibernate - NHibernate 多对一映射:如果 parent 为 null,则将外键设置为空 Guid 而不是 null
我想要做的是非常直截了当,但我似乎无法使用 NHibernate 获得正确的映射。
我正在处理具有父对象和子对象的数据库。子对象具有对数据类型 Guid 的父主键的外键引用。在任何情况下都很正常。现在数据库的设置方式是外键字段永远不能为空,因此对于没有父对象的孤立对象,外键应该是空的 Guid ('00000000-0000-0000-0000-000000000000 ')。
我设置 Nhibernate 的方式长期以来一直运行良好,但最近我将关系设置为双向,然后开始出现问题。显然,NHibernate 会看到父级为 null 并尝试将 null 保存到外键字段,但这是不允许的!
我正在使用的关系映射的结构示例如下。
父方映射:
子侧映射:
我一直在尝试不同的属性,但无济于事。我是否被迫使用 insert="false" 和 update="false" 属性,如果是这样,我该如何准确地维护这些关系?
提前感谢您的帮助。
.net - NHibernate 多对一和双向访问
我必须为哪些 HBM 编写Blog
并Post
在这些表之间建立双向关系?
我many-to-one
从双方都尝试过,但遇到了以下问题(很可能是因为我做错了):
- 将对象图插入到一个中的瞬态持久性错误
Session
。 Blog
和Post
表相互引用的外键问题。
注意:我的例子是人为的,请不要争论设计。
设计:
来源:
HBM:
所需的数据库结构:
hibernate - 使用一对多或多对一
二类:
部门任务
一个部门可以有很多任务。一项任务只能属于一个部门。
那么使用一对多还是多对一呢?
多对一
有什么不同?
顺便说一句,使用集合和列表有什么区别?
以及使用列表(xml 配置)的示例?
hibernate - 如何在 CompositeUserTypes 中使用多对一关联
有人有关于如何使用包含多对一关联的 CompositeUserType 的示例吗?如何将'nullSaveGet'方法中接收到的外键转换为对应的关联实体?
提前致谢
c# - NHibernate 可以在不使用批处理或 Criteria API 的情况下解决 N+1 的 Order->Customer 关系吗?
我一直在阅读并四处寻找黑白的答案。
让我们谈谈熟悉的
Customer
和Order
问题。假设我加载了 100 个订单,每个订单都链接到一个且只有一个客户。
使用 Fluent NHibernate,我将使用References()
我的链接Order
来Customer
定义我的Not.LazyLoad()
和Fetch.Join()
。
现在我在假设,NHibernate 可以简单地加入这两个表,并且很容易水合实体。但是,在我的测试中,我总是看到 N+1 个查询(实际上可能只有唯一的 ID)。我可以分享我的代码和表格,但它可能会让你感到厌烦,所以
- 是否有可能克服 Order->Customer 的 N+1 (一个->一个或者更确切地说是很多->一个)?或者我必须使用批处理或 Criteria API?
- 如果可能的话,你能指点我一个 Fluent NHibernate 的例子吗?
grails - Grails 多对一公开 id 而没有延迟加载?
Grails - 如何在不强制加载整个对象的情况下公开多对一关联属性的 id?
我可以从 Task 获取用户 ID,而不会导致整个用户对象的延迟加载吗?一般有没有办法做到这一点,还是会涉及每个类的自定义查询?这实际上涉及通过 BlazeDS 返回的 DTO 对象——我需要的只是 id,而不是关联的对象。