数据库中的空值是一个很抽象的概念,空值为NULL,这和没有值不一。打个比方,比如说有个瓶子,里面什么都没有只有空气,这是没有值;另外一个瓶子,里面是真空的,这叫空值。表现在程序上也就是str=""和str is null 这不是一回事
在从数据库里抽取数据的时候,一般都会遇到NULL值的问题,其实归根结底就数据库的设计
不是很好所造成的,如果在数据库初期设计的时候就能很好地处理引问题也就没有后来在程
序里抽取数据值为NULL的麻烦了.
例:取得Name的值为NULL,下面再对Name进行判断比较或者赋给一个string类型的变量时,就会出现错误。
所以在取数据时要把数据库里的值先行判断处理一下.
用ISNULL()在处理此类问题比较合适。
有时要把空值换成没有值
Public Function NullToString(field) As String
If IsNull(field) Then
NullToString = ""
Else
NullToString = field
End If
End Function
有时要把空值换成0值
Public Function NullTo_0(field) As String
If IsNull(field) Then
NullTo_0 = 0
Else
NullTo_0 = field
End If
End Function
虽然可以对数据库里的抽取值进行先行处理,但是本人意见还是先作好很好分析 严格规定数
据字段的默认值。这会对后来的开发起很关键的作用