如何在DataGridView C#表单中使用按钮从连接的MariaDB中删除行?

doinxwow  于 6个月前  发布在  C#
关注(0)|答案(1)|浏览(62)

所以基本上我已经通过连接字符串将MariaDB数据库连接到DataGridView,并且我已经成功地使用文本框作为每个列的引用来创建了一个“添加行”按钮。我的问题是如何使用另一个按钮从DataGridView和数据库本身删除选定的行?
我在网上到处寻找解决方案,但大多数人使用了“添加行”函数的反作用(他们根据每列的值进行删除,例如,当他们在文本框中键入“John”时,“John”单元格所在的行将被删除)或DataGridView.CellClick事件。

vawmfj5a

vawmfj5a1#

这里有一个对我有用的解决方案。最后的方法就是我在添加/删除行时刷新数据网格的方法。

private void btnUkloniStavku_Click(object sender, EventArgs e)
{
    string connectionString = ConfigurationManager.ConnectionStrings["MariaDBConnectionString"].ConnectionString;
    if (drvniSortimentGridView.SelectedRows.Count > 0)
    {
        using (MySqlConnection konekcija = new MySqlConnection(connectionString))
        {
            konekcija.Open();
            int odabraniIndex = drvniSortimentGridView.SelectedRows[0].Index;
            int redID = int.Parse(drvniSortimentGridView[0, odabraniIndex].Value.ToString());
            string upit = "DELETE FROM drvnisortiment WHERE sortimentID=@SortimentID";
            using (MySqlCommand cmd = new MySqlCommand(upit, konekcija))
            {
                MySqlParameter RowParameter = new MySqlParameter();
                RowParameter.ParameterName = "@SortimentID";
                RowParameter.MySqlDbType = MySqlDbType.Int32;
                RowParameter.IsNullable = false;
                RowParameter.Value = redID;

                cmd.Parameters.Add(RowParameter);
                cmd.ExecuteNonQuery();
            }
        }
    }
    OsvjeziGrid();
}

字符串

相关问题