cl.Open();
// //创建SelectCommand对象,并为其指定命令类型为存储过程
SqlCommand comup = new SqlCommand("updata", cl.con);
comup.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
SqlCommandBuilder cmb = new SqlCommandBuilder(da); // //创建一个DataAdapter对象,设定SelectCommand属性为SelectCommand的对象com
da.SelectCommand = comup;
//设置更新条件
da.UpdateCommand = new SqlCommand("UPDATE infor SET name=@name,sex=@sex,age=@age,department=@department,job=@job WHERE id = @id",cl.con);
// //为SqlCommand 添加必要的参数
SqlParameter uppar = da.UpdateCommand.Parameters.Add("@name", SqlDbType.VarChar, 50, "name");
uppar.Value = this.tb_name.Text;
uppar = da.UpdateCommand.Parameters.Add("@id",SqlDbType.Int,4,"id");
uppar.Value = this.tb_id.Text;
uppar = da.UpdateCommand.Parameters.Add("@sex",SqlDbType.Char,10,"sex");
uppar.Value = this.tb_sex.Text;
uppar = da.UpdateCommand.Parameters.Add("@age",SqlDbType.Int,4,"age");
uppar.Value = this.tb_age.Text;
uppar = da.UpdateCommand.Parameters.Add("@partement",SqlDbType.VarChar,50,"department");
uppar.Value = this.tb_department.Text;
uppar = da.UpdateCommand.Parameters.Add("@job",SqlDbType.VarChar,50,"job");
uppar.Value = this.tb_job.Text; uppar.SourceVersion = DataRowVersion.Original;
DataSet ds = new DataSet();
da.Fill(ds,"infor"); //这出的问题,过程或函数 'updata' 需要参数 '@id',但未提供该参数。
DataRow dr = ds.Tables["infor"].Rows[0];
da.Update(ds.Tables["infor"]);
cl.Close();
// //创建SelectCommand对象,并为其指定命令类型为存储过程
SqlCommand comup = new SqlCommand("updata", cl.con);
comup.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
SqlCommandBuilder cmb = new SqlCommandBuilder(da); // //创建一个DataAdapter对象,设定SelectCommand属性为SelectCommand的对象com
da.SelectCommand = comup;
//设置更新条件
da.UpdateCommand = new SqlCommand("UPDATE infor SET name=@name,sex=@sex,age=@age,department=@department,job=@job WHERE id = @id",cl.con);
// //为SqlCommand 添加必要的参数
SqlParameter uppar = da.UpdateCommand.Parameters.Add("@name", SqlDbType.VarChar, 50, "name");
uppar.Value = this.tb_name.Text;
uppar = da.UpdateCommand.Parameters.Add("@id",SqlDbType.Int,4,"id");
uppar.Value = this.tb_id.Text;
uppar = da.UpdateCommand.Parameters.Add("@sex",SqlDbType.Char,10,"sex");
uppar.Value = this.tb_sex.Text;
uppar = da.UpdateCommand.Parameters.Add("@age",SqlDbType.Int,4,"age");
uppar.Value = this.tb_age.Text;
uppar = da.UpdateCommand.Parameters.Add("@partement",SqlDbType.VarChar,50,"department");
uppar.Value = this.tb_department.Text;
uppar = da.UpdateCommand.Parameters.Add("@job",SqlDbType.VarChar,50,"job");
uppar.Value = this.tb_job.Text; uppar.SourceVersion = DataRowVersion.Original;
DataSet ds = new DataSet();
da.Fill(ds,"infor"); //这出的问题,过程或函数 'updata' 需要参数 '@id',但未提供该参数。
DataRow dr = ds.Tables["infor"].Rows[0];
da.Update(ds.Tables["infor"]);
cl.Close();
看我的代码:
加个SqlParameter [] spm=new SqlParameter[12];
spm[0]=new SqlParameter("@CategoryName",SqlDbType.VarChar);
spm[0].Value =voshanguserinfo.SHOPNAME;i=this.ExecProc1("传存储过程的名字",spm);
return i;
调用
public DataSet ExecProc1(string procName,SqlParameter [] sp)//执行查询的存储过程
{
SqlConnection sc=this.getSqlConnection();
sc.Open();
SqlCommand sm=sc.CreateCommand();
//sm.Connection=sc;
sm.CommandText=procName;
sm.CommandType=CommandType.StoredProcedure;foreach(SqlParameter s in sp)
{
sm.Parameters.Add(s);
}
SqlDataAdapter sda=new SqlDataAdapter();
sda.SelectCommand=sm;
DataSet ds=new DataSet();
sda.Fill(ds);
int i=ds.Tables[0].Rows.Count;
sc.Close();
return ds;
}