gpt4 book ai didi

mySQL 父、子模型和默认值

转载 作者:行者123 更新时间:2023-11-29 07:01:04 27 4
gpt4 key购买 nike

我有一个处理图像、相册和相册类别的数据库。

一个专辑可以有多个专辑(子专辑),并且只有 1 级深度。

一张专辑仅属于一个专辑类别。

在这里做了一些研究,我相信最合适的数据库模型是这个

album_category (album_category_id, name, description, position)

album (
album_id,
album_category_id,
parent_album_id,
name,
description,
cover_filename,
position
)

enter image description here

我做了一些我不确定的事情。我需要你的专业知识。

  1. 当专辑 parent_album_id 为空(意味着它不是子专辑)时,默认值为零。这可以吗?我可以选择检查Allow NULL 并将其设置为默认为空。这是更好的解决方案吗?

  2. 如果相册是子相册,则 parent_album_id 将设置为有效的 album_id。但是,我该如何处理子专辑的 album_category_id 呢?我应该将其设置为 null 还是 0?我是否将其设置为 parent_album_id 引用的 album_category_id

最佳答案

对于你的第一个问题,我更喜欢 0 而不是 null,因为你不必为 null 设置特殊处理。由于 album_id 是自动递增的,因此有效的 album_id 永远不会为零。

对于你的第二个问题,为子专辑设置类别 ID 的好处在于,如果是这种情况,您可以将其设置为不同的类别。我会默认为相同的类别,或者为空。 Null 是一个“特殊情况”,这意味着它使用父级的类别。如果为 null,则在查询中您可以从其父类别获取类别,这样,如果父类别发生更改,子相册的类别也会发生变化,而无需在更新父类别时更新任何子相册。

关于mySQL 父、子模型和默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43483938/

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