簡體   English   中英

VB.NET SQL篩選器不顯示NULL

[英]VB.NET SQL Filter doesnt show NULL

    Sub KlantenFilterZoeken(ByVal DataGridI As DataGridView, ByVal Tbl As String, ByVal NaamStraatHuisnummerBusnummerPostcodePlaatsTelefoon As String, ByVal DBCON As String)
    Dim Delen() As String = NaamStraatHuisnummerBusnummerPostcodePlaatsTelefoon.Split("|")

    Dim objConnection As New SqlConnection(DBCON)
    Dim objDt As New DataTable
    DataGridI.DataSource = Nothing
    objConnection.Open()
    Dim sSQL As String = "SELECT * FROM " & Tbl & " Where " & "KlantID Like @KlantID AND naam Like @naam AND straat Like @straat AND huisnummer Like @huisnummer AND postcode LIKE @postcode AND plaats LIKE @plaats AND telefoon LIKE @telefoon"
    Dim objCommand As SqlCommand = New SqlCommand(sSQL, objConnection)
    'Parameters
    objCommand.Parameters.AddWithValue("@KlantID", "%" & Delen(0) & "%")
    objCommand.Parameters.AddWithValue("@naam", "%" & Delen(1) & "%")
    objCommand.Parameters.AddWithValue("@straat", "%" & Delen(2) & "%")
    objCommand.Parameters.AddWithValue("@huisnummer", "%" & Delen(3) & "%")
    objCommand.Parameters.AddWithValue("@postcode", "%" & Delen(4) & "%")
    objCommand.Parameters.AddWithValue("@plaats", "%" & Delen(5) & "%")
    objCommand.Parameters.AddWithValue("@telefoon", "%" & Delen(6) & "%")

    Dim objAdapter = New SqlDataAdapter(objCommand)
    Dim objAdap As SqlDataAdapter = New SqlDataAdapter(sSQL, objConnection)
    objAdapter.Fill(objDt)
    DataGridI.DataSource = objDt
    DataGridI.Columns(0).Visible = True
    objConnection.Close()
    objConnection.Dispose()
End Sub

這是我的過濾datagridview的代碼,它可以工作,但是問題是此代碼“隱藏”了值為NULL的電話號碼,我不希望這樣做:

http://i.stack.imgur.com/VpXra.png

我怎樣才能解決這個問題

我不確定您要做什么。 但是,如果您要避免空單元格,則可以執行以下操作。

Dim objAdapter = New SqlDataAdapter(objCommand)
Dim objAdap As SqlDataAdapter = New SqlDataAdapter(sSQL, objConnection
objAdapter.Fill(objDt)

Dim i As Integer = objDt.Rows.Count
For i = 0 To objDt.Rows.Count Step 1
    If (String.IsNullOrEmpty(objDt.Rows(i)("telefoon"))) Then
        Dim phValue = "NULL"
        objDt.Rows(i)("telefoon") = phValue
    End If
Next

DataGridI.DataSource = objDt
DataGridI.Columns(0).Visible = True
objConnection.Close()
objConnection.Dispose()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM