【问题标题】:Null vs empty field in database数据库中的空字段与空字段
【发布时间】:2010-09-30 10:43:16
【问题描述】:

我有从另一个表导入数据的数据库。如果那里的数据为空。所以在导入到这里时它变成了空值。当我查询诸如名称不以'a'开头的列时,它应该返回名称不以'a'开头的所有记录。包括 NULL/空列。它返回的空记录但不为空。但我也需要空字段。我使用hibernate和sqlserver 2005。如何实现这个。?请帮助。 谢谢

【问题讨论】:

  • 您能添加查询吗?或者您是如何查询的?
  • 你能显示你现在使用的代码吗?

标签: sql-server-2005 hibernate


【解决方案1】:

Null 和 Empty 是不同的东西。

当您说“检索所有不以 a 开头的条目”时,这意味着它将检索所有带有 something 而不是a 的条目。 Null 不是什么东西。 Null 什么都不是。 Empty 有点意思。

您应该修改您的查询以添加OR IS NULL,以检索空字段。

【讨论】:

    【解决方案2】:

    From Wiki:

    Null 是结构化查询语言 (SQL) 中使用的特殊标记,用于指示数据库中不存在数据值。由关系数据库模型的创建者介绍...

    ...由于 Null 不是任何数据域的成员,因此它不被视为“值”,而是指示不存在值的标记(或占位符)。因此,与 Null 的比较永远不会导致 True 或 False,但总是会产生第三个逻辑结果,即 Unknown。

    查看此discussion

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-04
      相关资源
      最近更新 更多