sql参数求助
SqlDataAdapter sda = new SqlDataAdapter(selectStr, con);sda.UpdateCommand = new SqlCommand("update student set name=@name where s_id=@s_id", con);
sda.UpdateCommand.Parameters.Add("@name", SqlDbType.NVarChar, 10, "name");
SqlParameter parameter = sda.UpdateCommand.Parameters.Add("@s_id", SqlDbType.Int);
parameter.SourceColumn = "s_id";
parameter.SourceVersion = DataRowVersion.Original;
parameter.SqlValue = 110;
DataSet ds = new DataSet();
sda.Fill(ds, "emp");
DataRow dr = ds.Tables["emp"].Rows[0];
dr["name"] = "张三";
sda.Update(ds, "emp");
为什么不能更新指定行的 name 值,而只可以更新第一行的 name,如果把 parameter.SourceColumn = "s_id"; 这句去掉,就可以更新指定行的name了。
如果换成查询
sda.SelectCommand = new SqlCommand("select * from student where s_id=@s_id", con);
SqlParameter parameter = sda.SelectCommand.Parameters.Add("@s_id", SqlDbType.Int);
parameter.SourceColumn = "s_id";
parameter.SourceVersion = DataRowVersion.Original;
parameter.SqlValue = 110;
DataSet ds = new DataSet();
sda.Fill(ds, "emp");
DataRow dr = ds.Tables["emp"].Rows[0];
Console.WriteLine(dr["name"].ToString());
则可以查找到指定行的name
??????????????????????????????????????????????
补充:.NET技术 , C#