Firestore 中的 Null 与空字符串有什么区别?

A. *_*ano 1 firebase google-cloud-firestore

null一个类型的字段和一个空的字符串类型的字段有区别吗?

在文档中它说:

Null…………1字节

String....... UTF-8 编码的字节总数 + 1

在这种情况下,一个空字符串是否等于空值?

我正在创建数据库,并试图在某些情况下避免出现空数据。我不知道是否最好将一个字段声明为null没有数据。

Dou*_*son 5

Firestore null 是与 Firestore 字符串完全不同的数据类型。null 永远不等于任何字符串。空字符串和 null 可能占用相同的空间,但这就是相似之处。

您甚至可以从有关值类型排序的文档中看到它们的排序不同,其中 null 始终对涉及不同数据类型的查询中的任何字符串进行排序“小于”。

使用 null 作为文档字段的一种方法是使该字段可搜索,而无需任何实际数据进行索引。如果文档没有包含值的字段,则该文档将无法通过该字段搜索。一旦将 null 放入字段中,您就可以查询该字段是否与 null 相等。

  • 如果这是将来有用的数据,您应该存储一个空字符串。这完全取决于你。就我个人而言,我不会存储空字符串来表示缺少数据 - 这是一种常见的反模式。使用 null 来表示缺少数据。使用字符串来表示您稍后要使用的实际字符串值。 (2认同)