第十一部分 从网格视图中删除一行

第十一部分从网格视图中删除一行
方法一:用适配器来删除
整体步骤:建立数据库连接--〉定义操作语句--〉定义适配器、数据表-〉执行删除操作
“删除”按钮的代码如下:
SqlConnection conn=new SqlConnection ();
conn.ConnectionString =
"Server=(local);DataBase=EduBase2018;Integrated Security=sspi;";//连接数据库
SqlCommand sqlcom = conn.CreateCommand();
sqlcom.CommandText =”DELETE FROM student WHERE No=@No”;//定义操作语句,即SQL的删除语句
sqlcom.Parameters.Add("@No", SqlDbType.VarChar,10,”No”);//定义参数并赋值,注意的是:参数的数据类型SqlDbType,以及数据长度应与数据库中定义的类型一致
SqlDataAdapter sqladapter=new SqlDataAdapter();//定义适配器
DataTable da=(DataTable)this.dgv_student.DataSource;//定义数据表,为当前的网格视图的数据源(这样才可对网格视图中的数据进行操作)
conn.Open();//打开SQL连接
sqladapter.DeleteCommand = sqlcom;//适配器的删除语句为sqlcom的内容
int row = sqladapter.Update(da);//适配器更新数据表da(即网格视图的数据源);
conn.Close();//关闭SQL连接
if (row != 0)
MessageBox.Show("成功删除" + row + "行");//提示内容
在运行时,应选中要删除的行,按下键盘”Delete”键,再点击有上述删除代码的”删除”按钮,即完成数据的删除。
注意:在按下键盘”Delete”键时,网格视图的该行会”被删除”( 即该行在网格视图的状态被修改为”删除”状态),但在数据库中该行尚未被删除,只有点击最后的”删除”按钮时(删除网格视图中为删除状态的行),才会被删除。若直接点击”删除”按钮,将没有数据被删除,因为无”删除”状态的行需要删除。
方法二:采用SqlCommand来删除一行
整体步骤:建立数据库连接--〉定义操作语句--〉执行删除操作
“删除”按钮的代码如下:
SqlConnection conn=new SqlConnection ();
conn.ConnectionString =
"Server=(local);DataBase=EduBase2018;Integrated Security=sspi;";//连接数据库
SqlCommand sqlcom = conn.CreateCommand();
sqlcom.CommandText =”DELETE FROM student WHERE No=@No”;//定义操作语句,即SQL的删除语句
sqlcom.Parameters.Add("@No", SqlDbType.VarChar,10,”No”);//定义参数并赋值,注意的是:参数的数据类型SqlDbType,以及数据长度应与数据库中定义的类型一致
conn.Open();//打开SQL连接
int row= sqlcom.ExecuteNonQuery();//在数据库中删除
conn.Close();//关闭SQL连接
this.dgv_student.Rows.Remove(this.dgv_student.CurrentRow);//网格视图中移除该选中行,this.dgv_student(网格视图控件 名称)。
if (row != 0)
MessageBox.Show("成功删除" + row + "行");//提示内容

posted @ 2018-01-15 23:47  奔跑吧菜鸟  阅读(328)  评论(0编辑  收藏  举报