gpt4 book ai didi

database - 一对多关系中的标识符

转载 作者:搜寻专家 更新时间:2023-10-30 21:43:31 24 4
gpt4 key购买 nike

我有两个表,我们称它们为 FooBar,具有一对多关系,其中 Foo。 Foo 的主键是一个用序列自动生成的整数。

由于 Bar 完全依赖于 Foo 我将如何设置 Bar 的主键给定以下约束:

  • Bar 的记录是程序化的生成所以用户输入不能依赖于标识符。
  • 多个进程正在生成酒吧记录所以任何涉及Select Max() 生成一个 ID 会提出竞争条件。

我提出了两个我不满意的可能解决方案:

  • 将表格视为与 a 的多对多关系第三个表映射他们的记录一起申请代码句柄插入记录所以记录之间的映射正确创建。我不喜欢这是因为它使数据库设计应用中的误导和错误代码可能导致无效数据。
  • 给 Bar 两个列:FooIDFooBarID 并生成一个值FooBarID 通过选择max(FooBarID)+1 对于某些 FooID,但是如前所述,这会创建一个竞争条件。

我很感激任何关于替代表格布局的想法。

最佳答案

为 Bar 提供一个与 Foo 相同的自动主键。向 Bar 添加一个外键 FooID 列。

除非我遗漏了什么,否则似乎没有理由不工作。

关于database - 一对多关系中的标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/357048/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com