gpt4 book ai didi

python - 为什么 Google App Engine NDB 数据存储区同时具有 "—"和 "null"未知数据?

转载 作者:太空宇宙 更新时间:2023-11-04 10:10:11 24 4
gpt4 key购买 nike

我最近更新了一个实体模型以包含一些额外的属性,并注意到了一些奇怪的事情。对于从未写入的属性,Datastore 查询页面显示一个“—”,但对于我在 Python 中明确设置为 None 的属性,它显示“null”。

在 SQL 中,这两种情况都将为空。当我查询具有两种类型的未知属性的实体时,它们都读作 None,这符合该想法。

那么,如果我无法以编程方式区分它们,为什么 NDB 数据存储查看器会区分“从未写入”和“设置为 None”?

最佳答案

您必须将该值专门设置为 NULL,否则它不会存储在数据存储中,您会在数据存储查看器中看到它丢失。

这是一个重要的区别。可以为 NULL 值编制索引,因此您可以检索出生日期为空的实体列表。另一方面,如果您在出生日期未知时未设置出生日期,则无法检索缺少出生日期属性的实体列表 - 您必须遍历所有实体才能找到它们。

另一个区别是 NULL 值会占用数据存储空间,而缺失值则不会。

关于python - 为什么 Google App Engine NDB 数据存储区同时具有 "—"和 "null"未知数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38814666/

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