如何处理vb6 ResultSet中的空值
我有一个来自数据库的返回值,但我不能过滤空值如何处理vb6 ResultSet中的空值,vb6,Vb6,我有一个来自数据库的返回值,但我不能过滤空值 With rs_receita Do Until .EOF Set noaux2 = xml.createElement("Superavit") noaux2.Text = IIf(IsEmpty(!Superavit), "", CStr(!Superavit)) Call noaux.appendChild(noaux2) .MoveNext Loop End With
With rs_receita
Do Until .EOF
Set noaux2 = xml.createElement("Superavit")
noaux2.Text = IIf(IsEmpty(!Superavit), "", CStr(!Superavit))
Call noaux.appendChild(noaux2)
.MoveNext
Loop
End With
Set rs_receita = Nothing
在这种情况下,避免使用
IIf
<代码>IIf始终计算两个表达式。所以当!Superavit
为空,这将导致错误
另一方面,单行If
语句将只计算要执行的表达式。将其与IsNull()
函数结合使用,以便在变量不为null时可靠地为其分配数据库值:
If IsNull(!Superavit) Then noaux2.Text = "" Else noaux2.Text = CStr(!Superavit)
在VB6(很抱歉!)中,可以通过在字段值后面附加一个空字符串来强制对字符串进行强制
编辑:呸,这篇文章是从过去的爆炸。它为经典VB6提供了一系列空处理思想:
我相信以下任何一项都会奏效:
noaux2.Text = "" & rs("Superavit")
或
很抱歉vb6,谢谢您的帮助,此链接非常有用
noaux2.Text = vbNullString & rs("Superavit")