gpt4 book ai didi

sql - 空值与特殊的预定义空值

转载 作者:搜寻专家 更新时间:2023-10-30 22:12:42 25 4
gpt4 key购买 nike

我有一个表 myTable 有一个外键,假设它叫做 credential_id。大多数情况下,经过身份验证的用户通过执行某些操作来使用它,因此 credential_id 指向某个值(当将行插入到 myTable 时,credential_id 一个值)。

但是,我想允许匿名(未经过身份验证或 guest )用户也执行一些涉及此表的操作。由于它们未经过身份验证,因此 credential_id 没有任何值。

我想知道,什么会更好:允许 credential_id 为空值,或者为匿名用户创建一个特殊帐户并在用户未通过身份验证时使用它?问题在某种程度上与所谓的空模式有关,但与数据库有关。

最佳答案

此类记录通常用于数据仓库,因为 NULL 值通常是不明确的。为各种异常情况创建虚拟记录是首选,以消除这种歧义。在您的情况下,某种“访客”凭证将是非常合适的。

也就是说,如果您认为这是操作没有凭据的唯一原因,那么使用 NULL 值也可以。这相当直观:此操作没有任何信用,但确实发生了,我猜用户不需要进行身份验证。

您需要权衡实现访客凭证的(适度)成本与使用 NULL 值造成混淆的可能性。

关于sql - 空值与特殊的预定义空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21947557/

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