CREATE procedure 插入 @nian int,@yue int,@ri int
as
select * into #s from nian
select * into #d from nian
select * into #f from nian
update #s
set nian=@nian,yue=@yue,ri=@ri,beishu=5,shuliang=0
update #d
set nian=@nian,yue=@yue,ri=@ri,beishu=7,shuliang=0
update #f
set nian=@nian ,yue=@yue,ri=@ri,beishu=9,shuliang=0
insert into yue select * from #s
insert into yue select * from #d
insert into yue select * from #f
drop table #s,#d,#f
GO
c#调用代码
 protected void Button2_Click(object sender, EventArgs e)
    {
        SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["constr"]);
        SqlDataAdapter dbadapter = new SqlDataAdapter();
        dbadapter.SelectCommand = new SqlCommand();
        dbadapter.SelectCommand.Connection = con;
        dbadapter.SelectCommand.CommandText = "插入";
        dbadapter.SelectCommand.CommandType = CommandType.StoredProcedure;
        SqlParameter nian = new SqlParameter("@nian",SqlDbType .Int ,4);
        nian.Value = TextBox2.Text;
        dbadapter.SelectCommand.Parameters.Add(nian);
        SqlParameter yue = new SqlParameter("@yue", SqlDbType.Int, 4);
        yue.Value = TextBox3.Text;
        dbadapter.SelectCommand.Parameters.Add(yue);
        SqlParameter ri = new SqlParameter("@ri", SqlDbType.Int, 4);
        ri.Value = TextBox4.Text;
        dbadapter.SelectCommand.Parameters.Add(ri);
        con.Close();
    }
写完后运行了,但是数据库中什么都没有变化,运行过程也没有提示错误,麻烦各位老大帮忙看看那里有错了,我用的是VS2005+SQL2000

解决方案 »

  1.   

           SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["constr"]); 
            SqlDataAdapter dbadapter = new SqlDataAdapter(); 
            dbadapter.SelectCommand = new SqlCommand(); 
            dbadapter.SelectCommand.Connection = con; 
            dbadapter.SelectCommand.CommandText = "插入"; 
            dbadapter.SelectCommand.CommandType = CommandType.StoredProcedure; 
            SqlParameter nian = new SqlParameter("@nian",SqlDbType .Int ,4); 
            nian.Value = TextBox2.Text; 
            dbadapter.SelectCommand.Parameters.Add(nian); 
            SqlParameter yue = new SqlParameter("@yue", SqlDbType.Int, 4); 
            yue.Value = TextBox3.Text; 
            dbadapter.SelectCommand.Parameters.Add(yue); 
            SqlParameter ri = new SqlParameter("@ri", SqlDbType.Int, 4); 
            ri.Value = TextBox4.Text; 
            dbadapter.SelectCommand.Parameters.Add(ri); 
            DataSet set=new DataSet();
            dbadapter.Fill(set);
            con.Close(); 
      
      

  2.   

     存储过程写法有误吧:
     一般格试是:
     create procedure procedure_name
     (
      @nian int,
      @yue int,@ri int 
     )
     as
     *****sql*****
     楼主试下这种格式!
      

  3.   


    SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["constr"]); 
    SqlCommand command=new SqlCommand("插入",con);
    command.CommandType = CommandType.StoredProcedure;  
            SqlParameter nian = new SqlParameter("@nian",SqlDbType .Int ,4);  
            nian.Value = TextBox2.Text;  
            command.Parameters.Add(nian);  
            SqlParameter yue = new SqlParameter("@yue", SqlDbType.Int, 4);  
            yue.Value = TextBox3.Text;  
            command.Parameters.Add(yue);  
            SqlParameter ri = new SqlParameter("@ri", SqlDbType.Int, 4);  
            ri.Value = TextBox4.Text;  
            command.Parameters.Add(ri); 
            con.Open();
            command.ExecuteNonQuery();//用这种办法执行更新(插入、删除或者修改)
             con.Close();用我的办法试试。