问题标签 [composite-key]

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 回答
232 浏览

oracle - NHibernate - 当 PK 列之一为 NULL 时,删除具有复合 PK 的对象

嘿,我正在尝试从 Oracle 10g 表中删除以下结构的实体:

使用以下映射:

现在,假设表的 PK 是 P_ID 和 NAME 列(复合键),当 NAME 允许空值但 P_ID 不允许时。现在,问题是当 NHibernate 尝试删除一个具有 P_ID = 9 和 NAME = NULL 的对象时,它会输出以下删除语句:

显然,该操作不会删除任何内容,因为“NAME = NULL”应该是“NAME IS NULL”。我是否在这里遗漏了一些导致 NHibernate 像对待任何其他值一样对待空值的东西?

谢谢,哈雷尔

0 投票
1 回答
1095 浏览

java - JPA 复合键(所有字段均为 notNull 和 PRI)

我看到存在不止一种使用 JPA映射复合键的方法。

但在我的情况下有点不同:

我有一个只有 2 列的表:

我的观点是:我是否需要创建一个新的(主键类)类来映射我的复合键?

我试图找到最简单的方法来做到这一点。

有人可以帮我吗?

提前致谢!


我正在尝试这种方法:http ://www.java.net/print/236710


0 投票
2 回答
13863 浏览

entity-framework - 使用 Entity Framework 4.0 的复合 DB 键

我公司对大型数据库的重新设计,在数据库上大量使用了复合主键。

忘记性能影响,在 Entity Framework 4.0 中使用这个数据库时这会导致任何困难吗?数据库结构不太可能改变,我不是在寻找“哲学”辩论,但实际影响是什么?

根据Jeremy Miller的说法,“复合键通常会使任何类型的对象/关系映射和持久性变得更加困难。” 但他并没有真正说明原因。这与 Entity Framework 4.0 处理键的方式有关吗?

0 投票
1 回答
1899 浏览

sql - MySQL中的条件复合键?

所以我有这个带有复合键的表,基本上'userID'-'data'必须是唯一的(见我的另一个问题SQL table - semi-unique row?

但是,我想知道是否有可能仅在 userID 不为零时才生效?我的意思是,'userID'-'data' 对于非零用户 ID 必须是唯一的?

还是我在叫错树?

谢谢马拉
_

0 投票
2 回答
8865 浏览

nhibernate - Fluent NHibernate:如何在两侧使用复合键映射 M:N 多对多

好的,这就是问题所在。它甚至不如想要在他的 PK 中使用不同列数映射 m:n 的人那么疯狂。

无论我做什么或在哪里看,似乎都没有方法链可以成功映射它。

我已经尝试在父列和子列上加倍,例如 ParentColumn("").ParentColumn("").ChildColumn("").ChildColumn("") - 不认为它会起作用,我是对的。

尝试仅使用 ForeignKeyConstraintNames 没有运气。FNH 仍然将一侧映射到单个键。

问题域

DDL

更新:我尝试创建自定义密钥类型但没有成功。

你的挑战,如果你选择接受它:

使用此表结构提供最佳工作流畅映射的代码,可能使用自定义键类型,赏金是你的。

任何人?

0 投票
1 回答
7894 浏览

c# - 使用带有复合键的 NHibernate 的 ISession.Get<>()

我在数据库表/NHibernate 实体中有一个复合键。我可以以某种方式使用该.Get方法来获取特定实体,还是由于复合键而必须使用 HQL / Criteria?

0 投票
3 回答
46945 浏览

java - 休眠复合键

是否有必要将复合ID映射到类?

可以这样吗?

或者应该是

如果我们有复合键,那么该类应该实现equals()override()方法是否有必要?

0 投票
2 回答
274 浏览

database-design - 可以将复合键设置为另一个表的主键吗?

可以将复合键设置为另一个表的主键吗?

例如我有表格:

  • Books - 带主键:Product_ID
  • Client- 带主键:Client_ID
  • Clients_Books- 使用复合主键:Product_IdClient_ID

我想将此复合主键从 Clients_Books 设置为另一个名为 Order_Details 的表的主键。但我不想使用 Books、Clients 表中的 Product_ID 和 Client_ID。

这有意义吗?欢迎所有意见。

0 投票
1 回答
138 浏览

ruby-on-rails - 如何在 RoR 中将多个不同类型的元素相互链接?

我有事件、文档和调查,它们都需要能够相互链接,我计划有一个包含四列的链接表,如下所示:

问题是我不知道如何在 RoR 中制作模型,以便我可以使用元素类型字段来识别相应元素 ID 属于哪个表(文档、事件或调查)。我对 Ruby 真的很陌生,任何帮助都将不胜感激。

0 投票
3 回答
168 浏览

ruby-on-rails - 如何使用 Rails 模型从复合键表中获取值?

我有以下架构(* 表示主键):

(target_language_name 是以母语书写的目标语言的名称)。

我想从给定 native_language_id 和 target_language_id 值的 native_to_target_language 表中获取 target_language_name 的值。

得到这个的最好方法是什么?使用来自http://compositekeys.rubyforge.org/的复合主键?有没有不使用原始 SQL 查询的标准方法?