使用文本框的Datagrid过滤器

时间:2019-04-17 10:23:25

标签: vb.net

晚安! 我正在添加一个用于过滤名称,姓氏等的文本框。 但是我只能过滤一个数据。

代码如下:

Private Sub Filter_TextChanged(sender As Object, e As EventArgs) Handles filter.TextChanged
        'Dim command As New MySqlCommand("SELECT * FROM `employee` WHERE CONCAT('Firstname','Lastname') like '%" & filter.Text & "%'")
        Dim conenc As New MySqlConnection
        conenc.ConnectionString = ("host=127.0.0.1; user=root; database=library")
        Dim tablee As New DataTable()
        Try
            conenc.Open()
            Dim adapter As New MySqlDataAdapter("SELECT * FROM library.employee WHERE Firstname like '%" & filter.Text & "%'", conenc)
            adapter.Fill(tablee)
            emplo.DataSource = tablee
            conenc.Close()

        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            conenc.Dispose()

        End Try

该行中的

昏暗的适配器作为新的MySqlDataAdapter(“ SELECT * FROM library.employee WHERE 名字,例如'%”和filter.Text&“%'”,connc)

我想添加多个值,例如姓氏,中间名。

3 个答案:

答案 0 :(得分:0)

设置了第一个过滤器后,如果选择另一个过滤器,则需要将“ And”设置为未使用的字符串变量,如果要在该过滤器的SQL之前将“ And”连接起来。我希望这是有道理的。

答案 1 :(得分:0)

也许可以这样尝试(使用参数)

    Dim TxBoxSearch As New TextBox
    Dim conenc As New SqlConnection
    Dim CmdEmployee As New SqlCommand("SELECT *, Firstname + Lastname AS FullName 
                                        FROM library.employee WHERE FullName like '%@SearchString%'", conenc)
    With CmdEmployee
        .Parameters.AddWithValue("@SearchString", TxBoxSearch.Text)
    End With

答案 2 :(得分:0)

我认为您应该尝试使用此代码,只需在代码中为姓氏添加第二个条件,如下所示:

Dim adapter As New MySqlDataAdapter("SELECT * FROM library.employee WHERE Firstname like '%" & filter.Text & "%' and Lastname like '%" & filter2.Text & "%'", conenc)

我希望它可以帮助您,,, ^ _ ^

相关问题