【问题标题】:How to search data in mysql database and add the search data in DataGridView using C#?如何在 mysql 数据库中搜索数据并使用 C# 在 DataGridView 中添加搜索数据?
【发布时间】:2013-03-13 15:17:20
【问题描述】:

我现在已经工作了一个小时,也许 6 小时我无法让它工作,请告诉我缺少什么?

例如,我在这里有客户 Warren Buffet(他只是一个例子:D),如果我在 txtbox 上搜索他的名字,并且 sqldatabase 在数据行上找到他的名字,那么 Wafrren Bufet 数据将被添加到 DataGridView。

这是代码!

        private void button2_Click(object sender, EventArgs e)
        {
            MySqlConnection connection = null;
            string hostname = "localhost";
            string database = "aparece_hoteldb";
            string username = "root";
            string password = "";
            connection = new MySqlConnection("host=" + hostname +
                                            ";database=" + database +
                                            ";username=" + username +
                                            ";password=" + password + ";");

            string query = "select * from reservations " +
                           "where Client like '%" + txtSearch.Text + "%' OR " +
                               "ClientNumber like '%" + txtSearch.Text + "%' OR " +
                               "RoomNumber like '%" + txtSearch.Text + "%' OR " +
                               "ClientRoomType like '%" + txtSearch.Text + "%' OR " +
                               "AddonService like '%" + txtSearch.Text + "%' OR "+ 
                               "TotalHotelRate '%" + txtSearch.Text + "%'";

            connection.Open();
            List<string>[] detailList = a.mysqlSelect(query);
            for (int i = 0; i < detailList.Length; i++)
            {
                dgvUser.Rows.Add(detailList[i][0], detailList[i][1], detailList[i][2], detailList[i][3], detailList[i][4]);
            }

        }

    }

}

这是图片!

![在此处输入图片描述][1]

【问题讨论】:

  • 这个函数的目的是为了防止数据库加载数据我仍然可以找到客户的名字。
  • 抱歉重复代码,我稍后会使用 OOP 编辑​​它们,现在重要的是我会让它工作!
  • 到目前为止,上面的 datagridview 可以正常工作,但下面却不能正常工作!
  • 嗨!我缩短了上面的代码以使其更易于理解!

标签: c# mysql database search datagridview


【解决方案1】:

所以你的意思是DataGridView中已经有数据了,如果你搜索一个使用TextBox,它会被添加到DataGridView的列表中吗?这是我的代码:

var detailList = (a.mysqlSelect(query)).ToList();
foreach(var dList in detailList)
{
   dgvUser.Rows.Add(dList);
}

但如果您只想在 DataGridView 上进行数据搜索,这是我的代码:

var detailList = (a.mysqlSelect(query)).ToList();
dgvUser.DataSource = detailList;

希望对你有帮助!

编辑: 顺便说一句,您的查询代码在 TotalHotelRate 中缺少“喜欢”。

【讨论】:

    猜你喜欢
    • 2023-03-14
    • 2014-11-11
    • 2019-01-08
    • 2016-02-28
    • 1970-01-01
    • 2012-11-23
    • 2016-09-10
    • 1970-01-01
    相关资源
    最近更新 更多