一、ExecuteNonQuery 方法是什么?
SqlCommand的一个类,用于包含update、insert、delete、select的Transact-sql 语句中来修改数据库中的数据,并返回结果。
二、返回的结果是什么?
第一种情况:用于update、insert、delete语句中返回该受影响的行数
第二种情况:用于select语句返回值为-1
三、实战演练
①、数据表class_Info
②、代码展示
//删除信息 public int DeleteClass(int classNo) { //实例化连接对象,并且连接数据源 using (SqlConnection conn = new SqlConnection(DataSourceDAL.Connstring)) { SqlCommand cmd = conn.CreateCommand(); //实例化一个执行对象cmd cmd.CommandText = @"delete from class_Info where class_No = @classNo"; //要执行的SQL语句:删除class_Info表中指定class_No=3的记录 cmd.CommandType = CommandType.Text; //执行的SQL语句是文本类型的 cmd.Parameters.Add(new SqlParameter("@classNo", classNo)); //注入值 conn.Open(); //打开连接 int result = cmd.ExecuteNonQuery(); //定义一个int类型变量result,用于接收受影响的行数 return result; //返回受影响的行数 } }
③、执行结果
如下图,通过断点逐行调试,当走到ExecuteNonQuery()方法时,它的返回的值为1,也就是说明表中有一条数据被修改了
那大家有没有觉得这个很眼熟呢?其实和我们在【Microsoft SQL Server ManageMen Studio】中执行的是一样的效果,如下图是在软件中执行此操作的结果,ExecuteNonQuery()的工作就是返回那句话。