当前位置: 首页 > 面试题库 >

空与非空

井通
2023-03-14
问题内容

从目前的情况来看,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意测验或进一步的讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。

8年前关闭。

在sql数据库列中,NULL除非我们使用指定,否则将将空字段设置为NOT NULL。用一种代替另一种的优点是什么?谢谢!


问题答案:

如果需要在列中表示未知数据,请使其为可为空。如果列中始终有数据,则最好使其不为空,因为

  1. 处理null可能会令人讨厌并且违反直觉
  2. 节省一点空间
  3. 在某些数据库系统上,不索引空值。


 类似资料:
  • 我想提供两个同名的方法,它们可以接受可选或非可选输入: 它应由非空变体扩展: 是否有一种方法可以改进这一点,即不引入新的名称(例如使用kotlin扩展)?

  • 大家在使用 Lua 的时候,一定会遇到不少和 nil 有关的坑吧。有时候不小心引用了一个没有赋值的变量,这时它的值默认为 nil。如果对一个 nil 进行索引的话,会导致异常。 如下: local person = {name = "Bob", sex = "M"} -- do something person = nil -- do something print(person.name)

  • 主要内容:在创建表时设置非空约束,在修改表时添加非空约束,删除非空约束MySQL非空约束(NOT NULL)指字段的值不能为空。对于使用了非空约束的字段,如果用户在添加数据时没有指定值,数据库系统就会报错。可以通过 CREATE TABLE 或 ALTER TABLE 语句实现。在表中某个列的定义后加上关键字 NOT NULL 作为限定词,来约束该列的取值不能为空。 比如,在用户信息表中,如果不添加用户名,那么这条用户信息就是无效的,这时就可以为用户名字段设置非空约

  • 问题内容: 我需要使用基于两个DATETIME列的最大值的公式更新一行。我通常会这样做: 但是,两个列都可以为NULL。即使另一个为NULL,我也需要最大的日期(当然,当两个都为NULL时,我希望为NULL),并且当其中一列为NULL时,返回NULL。 这似乎可行: 但我想知道…我错过了更直接的方法吗? 问题答案:

  • 我使用了Gson,但我需要转换器只序列化非空值或非空值。 例如: 现在,将该对象转换为json的Gson实例如下所示

  • 我是一个编程新手。我在go编程书中读到过,片由三部分组成:指向数组的指针、长度和容量。 我感到困惑的零切片(切片没有底层数组指向,len=0,cap=0),非零切片只有len=0,cap=0和空切片。 谁能告诉我零和空切片是否是一回事?如果它们都不同,那么请告诉这两者之间的区别是什么? 如何测试一个切片是否为空? 另外,指针在长度和容量为零的非nil片中保留什么值?