将数据表与DBNULL值进行比较

时间:2016-05-03 14:58:48

标签: vb.net

我使用以下查询将数据从SQL提取到DataTables中:

Select * FROM [dbname].INFORMATION_SCHEMA.COLUMNS 

我使用以下代码比较两个DataTables的值:

If dtSource(iRow)(3) <> dtTarget(i)(3) Then
     'make moves
End If

我收到以下错误:运营商'&lt;&gt;'未定义类型“DBNull”并键入“DBNull”。

在比较INFORMATION_SCHEMA.COLUMNS中的COLUMN_DEFAULT列时抛出异常,其中包含NULL值。

我现在处理此问题的方法是在比较之前检查是否有空值:

If IsDBNull(dtSource(iRow)(3)) OR IsDBNull(dtTarget(i)(3)) Then 
     If (IsDBNull(dtSource(iRow)(3)) And NOT IsDBNull(dtTarget(i)(3))) OR viceversa.. Then 
          'make moves 
     End If
Else 
     If dtSource(iRow)(3) <> dtTarget(i)(3) Then
         'make moves
    End If
End If

我觉得必须有更好的方法来做到这一点,但我坚持这一点。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:3)

尝试:

set(get(gca,'child'),'EdgeAlpha',0.2);