gpt4 book ai didi

mysql - CompositeKey 作为 peewee 与 mysql 的外键

转载 作者:行者123 更新时间:2023-11-29 13:13:19 24 4
gpt4 key购买 nike

我使用 peewee 作为 mysql DB 的 ORM。我的方案中有 3 张表,一张用于设备,一张用于应用程序,一张用于每个设备每个测试应用程序和测试应用程序的结果。APPS 表如下所示:

package name | version name | version code |apk name

前 3 列是我的主键,因为我想要表中的每个修订版本,并且希望能够根据特定版本代码轻松过滤应用程序(版本代码随着 git\svn 中的修订版本而增加,而版本名称代表版本本身取自开发分支)。当我想要将 APPS 表作为 TESTS 表的引用表时,我的问题就开始了,这意味着每个测试都会引用 APPS 两次,一次针对测试人员,一次针对测试的应用程序。我不确定在我的 TESTS 表中使用 3 个字段的外键(使其成为 6 个!)是否是一个好主意。

有什么好的解决办法吗?我尝试添加自动增量的 _ID 字段作为“KEY”,这样我就可以访问一个数字单个字段,但 ORM 并不真正支持它,我有点咬牙切齿地试图解决这个问题。 p>

我的 Db 是组织不好还是我需要简单地替换 ORM ?我认为如果没有 ORM,我可能会很容易地完成它......

最佳答案

选项:

  1. APPS 表中定义自动递增主键。
  2. pkgverAPPS 表中定义复合唯一键vcode 列。
  3. 使用该表的主键值作为child中的FK引用表。

关于mysql - CompositeKey 作为 peewee 与 mysql 的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21814792/

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