如何使用datagrid上的每个删除按钮从数据库中删除行

时间:2018-01-05 15:08:39

标签: c# sql oracle datagridview delete-row

我在我的数据网格视图中的每一行添加了一个按钮以下命令

>  var deleteButton = new DataGridViewButtonColumn();
>             deleteButton.Name = "Deletefromgrid";
>             deleteButton.HeaderText = "Delete";
>             deleteButton.UseColumnTextForButtonValue = true;
>             deleteButton.Text="Delete";
>             dataGridView1.Columns.Add(deleteButton);

和我的数据gridview

enter image description here

我使用以下命令加载数据

OleDbDataAdapter adp = new OleDbDataAdapter("select appsid,appsname from apps", con);
            DataTable dt = new DataTable();
            adp.Fill(dt);
            dataGridView1.DataSource = dt;

现在如何使用“删除”按钮永久删除行数据库?

1 个答案:

答案 0 :(得分:0)

>  int i = 0;
>         private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
>         {
>             if (dataGridView1.Columns[e.ColumnIndex].Name == "btndelete")
>             {
>                 using (OleDbConnection conn = new OleDbConnection(sqlCon))
>                 {
>                     conn.Open();
>                     using (OleDbCommand cmd = conn.CreateCommand())
>                     {
>                         int id;
>                         if (this.i > 0)
>                         {
>                             id = Convert.ToInt32(this.dataGridView1.Rows[e.RowIndex].Cells[1].Value);
>                         }
>                         else
>                         {
>                             id = Convert.ToInt32(this.dataGridView1.Rows[e.RowIndex].Cells[0].Value);
>                         }
>                         cmd.CommandText = @"delete from Table1 where ID=" + id;
>                         int i = cmd.ExecuteNonQuery();
>                         if (i > 0)
>                             MessageBox.Show("Deleted.");
>                     }
>                 }
>             }
>             dataGridView1.DataSource = BindSource();
>             i++;
>         }