这个错误大多出现在使用数据库字段为空(NULL)的时候,把Null赋值给串,
处理办法类似:text1.text= field(i).value &""
如果数据库中的某个字段值是空值(即null,注意不是空字符串),而你又想将这个值直接参与运算或者进行字符串 *** 作,或者把它赋值给一个已指定类型的变量,就会提示“无效使用null”了。你可以在使用这个字段值之前先检测其是否为null:
If IsNull(rs("字段名")) Then
'字段值不是null,可以 *** 作
Else
'字段值为null,不能 *** 作
End If
或者强制把字段值转化为非null值:
如果字段类型是字符串,则:
x = rs("字段名") &""
如果字段类型是数值,则:
x = 0 &rs("ziduan")
Do While Not rs.EOFx = x + 1
Grid1.AddItem ""
Grid1.TextMatrix(x, 1) = rs.Fields(0).Value
Grid1.TextMatrix(x, 2) = rs.Fields(1).Value
Grid1.TextMatrix(x, 3) = rs.Fields(2).Value
rs.MoveNext
If rs.EOF Then
rs.MoveFirst
End If
Loop
这里的
If rs.EOF Then
rs.MoveFirst
End If
会导致循环变为死循环,不知道为什么要这么用.
应该去掉这三行.
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)