数据库已经写好了插入,更新,删除的存储过程,,请问在C#环境中如何调用存储过程来对数据库表进行插入,更新,删除....各位大虾们..帮帮忙啊,,已经搞半天了,,,还不行..

解决方案 »

  1.   

    CommandType 选StorePorcedure,
    cmdText为存储过程名字
    params为存储过程需要的参数数组public int ExecuteSQLNonQuery(CommandType cmdType, string cmdText, params SqlParameter[] cmdParms) 
    {
    SqlCommand cmd = new SqlCommand();
    PrepareOleDbCommand(cmd, this._BQTWReportConnection, cmdType, cmdText, cmdParms);
    int val = cmd.ExecuteNonQuery();
    cmd.Parameters.Clear();
    return val;
    }
      

  2.   

    connection.Open();
    SqlCommand command = new SqlCommand("SampleProc", connection);
    command.CommandType = CommandType.StoredProcedure;SqlParameter parameter = command.Parameters.Add(
      "RETURN_VALUE", SqlDbType.Int);
    parameter.Direction = ParameterDirection.ReturnValue;parameter = command.Parameters.Add( "@InputParm", SqlDbType.NVarChar, 12);
    parameter.Value = "Sample Value";parameter = command.Parameters.Add(
      "@OutputParm", SqlDbType.NVarChar, 28);
    parameter.Direction = ParameterDirection.Output;
    command.ExecuteNoquery();
    .....
      

  3.   

    这里的文章对这些功能进行了详细演示,
    http://blog.csdn.net/zhzuo/archive/2004/08/06/67016.aspx
    http://blog.csdn.net/zhzuo/archive/2004/08/06/67037.aspx
      

  4.   

    public int ifStuExist(string stuId)
    //判断是否存在此学生!
    {
    SqlConnection myConnection=new SqlConnection(ConfigurationSettings.AppSettings["strConn"]);
    SqlCommand myCommand=new SqlCommand("sp_student_selectAsId",myConnection);
    myCommand.CommandType=CommandType.StoredProcedure;
    myCommand.Parameters.Add("@stuId",SqlDbType.VarChar,15).Value=stuId;
    myConnection.Open();
    SqlDataReader thisReader=myCommand.ExecuteReader();
    if(thisReader.Read())
    {thisReader.Close();
    return 1;

    else 
    thisReader.Close();
    return 0;
    }
    //其中sp_student_selectAsId为存储过程名
    --Cost:wht
    --Select a single sheet 
    CREATE    PROCEDURE sp_student_selectAsId
    @stuId varchar(15)

    AS
    BEGIN


            select stuId,
              stuName,
            --  stuStatus, 
             stuSex= case  stuSex when '0' then '男' else '女' end ,
              stuPwd
            from student
    where stuId=@stuId
    END
    GO