从SQL中的数据库查询中获取结果,并将其显示在数据网格视图中

本文关键字:显示 数据 数据网 视图 网格 数据库 SQL 查询 获取 结果 | 更新日期: 2023-09-27 18:25:07

我的问题是,我不知道如何用c#代码链接sql数据库,但我想做的是向我的sql数据库发送一个搜索查询,并将结果显示回数据网格视图。我的问题在于数据的返回和显示。以下是我在搜索按钮点击事件中创建的搜索方法:

// takes one of the parameters and searches the data base for all rows that match the parameter and argument
private void SearchBTN_Click(object sender, EventArgs e)
{
    switch(searchCB.SelectedIndex)
    {
        case 0:
            selectedItem = "HaulerName";
            break;
        case 1:
            selectedItem = "TicketNumber";
            break;
        case 2:
            selectedItem = "LeaseName";
            break;
        case 3:
            selectedItem = "TicketDate";
            break;
        case 4:
            selectedItem = "CustomerName";
            break;
        case 5: 
            selectedItem = "LeaseOperator";
            break;
        case 6:
            selectedItem = "ProductName";
            break;
    }
    if (selectedItem.Equals("TicketDate") == false)
    {
        query = "SELECT * FROM DisposalData.dbo.ThirdPartyDisposal WHERE " + selectedItem + " LIKE '" + searchTB.Text.ToString() + "%';";
        var connection = new SqlConnection(connectionString);
        connection.Open();
        SqlCommand command = new SqlCommand(query, connection);
        SqlDataReader reader = command.ExecuteReader();
    }

}

我运行了调试器,它运行得很好,而且执行得很好。我一辈子都不知道如何将结果放入数据网格视图表中。任何帮助和尽可能多的解释都将是伟大的,谢谢大家!

从SQL中的数据库查询中获取结果,并将其显示在数据网格视图中

您应该了解SQL注入。要使代码工作,请更换此

sqlDataReader reader = command.ExecuteReader();

带有

 SqlCommand cmd = new SqlCommand(query, con);
 cmd.CommandType = CommandType.Text;
 SqlDataAdapter da = new SqlDataAdapter(cmd);
 DataSet ds = new DataSet();
 da.Fill(ds, "ss");
 dataGridView1.DataSource = ds.Tables["ss"];

如果使用webforms添加此行,在winforms中忽略它

 dataGridView1.DataBind();