C#使用一个文本框过滤搜索多行的数据表

时间:2017-03-13 10:48:23

标签: c# select search datagridview datatable

我为我的考勤监控系统创建了一个过滤器搜索,它按员工姓名搜索,但不搜索其他字段,我想我会使用LIKE关键字,但我不会知道怎么做。这是我的代码

private void textBox1_TextChanged(object sender, EventArgs e)
{ 
    connection.Open();
    OleDbCommand command = new OleDbCommand();
    command.Connection = connection;
    string query = "SELECT * FROM tblEmployee WHERE [Firstname] like @1";
    command.parameters.AddWithValue("@1",textBox1.Text);
    command.CommandText = query;
    OleDbDataAdapter da = new OleDbDataAdapter(command);
    DataTable dt = new DataTable();
    da.Fill(dt);
    dataGridView1.DataSource = dt;
    dataGridView1.Update();
    dataGridView1.Refresh();
    connection.Close(); 
}

1 个答案:

答案 0 :(得分:0)

行为与您编写的查询完全匹配,您应该重写查询以符合您的要求:

JSON(node: )

顺便说一句,我稍微改变了你的string query = "SELECT * FROM tblEmployee WHERE [Firstname] like '%' + @1 + '%' OR [OtherColumn] LIKE '%' + @1 + '%'"; ,使其表现得像''它确实包含XXX'。