gpt4 book ai didi

database - NULL 如何存储在数据库中?

转载 作者:太空狗 更新时间:2023-10-30 01:43:53 24 4
gpt4 key购买 nike

我很想知道 NULL 是如何存储到数据库中的?

这当然取决于数据库服务器,但我想对它有一个大概的了解。


第一次尝试:

假设服务器将一个未定义的值(可以是任何值)放入 NULL 值的字段中。

你能不能非常幸运地检索到 NULL 值

...WHERE field = 'the undefined value (remember, could be anything...)'

第二次尝试:

服务器是否在某处有标志或任何元数据来指示此字段为 NULL?

然后服务器必须读取这个元数据来验证字段。

如果元数据指示 NULL 值并且查询没有“field IS NULL”,然后记录被忽略。


好像太简单了...

最佳答案

MySql 使用的是第二种方法。它存储一组位(每列一个)和每行的数据以指示哪些列为空,然后将该字段的数据留空。我很确定这对所有其他数据库也是如此。

第一种方法的问题是,您确定您为数据选择的任何值都不会显示为有效数据吗?对于某些值(如日期或 float ),这是正确的。对于其他人(如整数),这是错误的。

关于database - NULL 如何存储在数据库中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/254152/

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