首页 > 技术文章 > DBNull和null的区别

2714585551summer 2016-03-15 21:02 原文

参考资料:http://stackoverflow.com/questions/4958379/what-is-the-difference-between-null-and-system-dbnull-value

              http://www.cnblogs.com/muou/archive/2010/03/23/1692391.html

  区别:1:DBNull 是一个系统数据类中的静态实例  

              null该值表示缺乏参照,如果一个对象是null  表示这个不存在

          2:DBNull类代表一个不存在的值 DBNull.Value是它唯一的实例  如果对象在数据库中的值是空的话,或者是没有实例化,但DBnull.Value指向有效的对象。

               在数据库中,例如,列在表的一行可能不包含任何数据。即列被认为不存在,而不是仅仅是没有价值。

               DBNull对象代表了不存在的列。此外,COM互操作使用DBNull类区分VT_NULL变体,这表明一个不存在的价值,和VT_EMPTY变体,这表明一个未指定的值。

          3:在数据库中 比如 有一行 但值是空的 数据是没有的 就返回DBnull  但是 如果一行都没有 就是null 

推荐阅读