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

我应该使用NULL还是空字符串表示表列中没有数据?

吕俊才
2023-03-14
问题内容

空字符串或空字符串-
在表列中不表示任何数据时,一个字符串比另一个字符串更好吗?(我专门使用MySQL,但我认为这是与系统无关的。)使用一个相对于另一个是否有主要的优点/缺点,还是仅仅是程序员偏爱?


问题答案:

我坚决不同意说无条件使用NULL的每个人。如果将列设置为NOT
NULL,则允许列为NULL会引入一个附加状态。如果不需要其他状态,请不要执行此操作。也就是说,如果您无法在空字符串的含义和null的含义之间得出区别,则将列设置为NOT
NULL并使用空字符串表示空。用两种不同的方式表示同一件事是一个坏主意。

告诉您使用NULL的大多数人还给出了一个示例,其中NULL表示的含义不同于空字符串。在这些示例中,它们是正确的。

但是,在大多数情况下,NULL是不必要的额外状态,只会迫使程序员不得不处理更多的情况。正如其他人提到的那样,Oracle不允许存在这种额外状态,因为它会将NULL和空字符串视为同一事物(不可能在Oracle中不允许空的列中存储空字符串)。



 类似资料:
  • 我在dataframe中有一个列,它是从另一个dataframe的列名(使用函数)创建的。因此,值是字符串,而不是内部带有浮点数的列表。列如下所示: 我需要的是一个列,其中有一个浮动列表。For loops看起来不是一个好主意,也不是一个优雅的主意,我没有任何其他的。。。

  • 问题内容: 如何将列表中的字符串转换为正确的列表? 我对此感到厌倦,但并非我所期望的: 我想要这样: 谢谢 问题答案: 使用literal_eval从AST模块: 与不同,literal_eval可安全地用于用户字符串或其他未知字符串源。它只会将字符串编译成基本的python数据结构-其他所有方法都会失败。 或者,如果您的字符串就是这样(即,没有嵌入的逗号或在带引号的字符串内解析的意思),则可以强

  • 问题内容: 在字符串中串联变量或使用花括号代替是有利还是不利? 级联: 大括号: 就我个人而言,我一直都在串联字符串,因为我使用UEStudio,并且在串联时会突出显示具有不同颜色的PHP变量。但是,如果不分解变量,则不会。它使我的眼睛更容易找到长字符串等中的PHP变量。 人们对有关SQL感到困惑。 这 不是 这个问题的意思。 我已经更新了示例以避免混淆。 问题答案: 如果查看输出,则以下所有内容

  • 问题内容: 我有一个当前正在使用的Web应用程序,该应用程序将MySQL数据库用作后端,在继续进行下去之前,我需要了解哪种情况更适合我的情况。 简而言之,在此应用程序中,用户将能够使用任何数字字段(由他们决定)构造自己的表单,现在我将其全部存储在由外键链接的几个表中。我的一个朋友建议为了使事情“轻松/快速”,我应该将每个用户的表单转换为一个平面表,以便从他们那里查询数据保持快速(以防万一)。 我应

  • 本文向大家介绍Python中应该使用%还是format来格式化字符串,包括了Python中应该使用%还是format来格式化字符串的使用技巧和注意事项,需要的朋友参考一下 %还是format 1、皇城PK Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为%还是format这根本就不算个问题。

  • 问题内容: 我有一个只包含字段而没有方法的类,如下所示: 这可以很容易地翻译成字典。该类对于将来的添加更加灵活,使用可以更快。那么使用dict会有好处吗?字典会比全班更快吗?并且比具有插槽的课程快吗? 问题答案: 你为什么要把它当作字典?有什么好处?如果您以后要添加一些代码,会发生什么?您的代码会去哪儿? 类用于捆绑相关数据(通常是代码)。 字典用于存储键- 值关系,其中通常键都是同一类型,并且所