首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

Update 存储过程 失败,数据无法修改,解决办法

2012-02-02 
Update 存储过程 失败,数据无法修改,存储过程如下:/*修改用户信息*/CREATEPROCEDURELy_ModifyAdminInfo(@U

Update 存储过程 失败,数据无法修改,
存储过程如下:
/*修改用户信息*/
CREATE   PROCEDURE   Ly_ModifyAdminInfo
(
@UserID   int,
@UserPurview   int,
@RealName   varchar(50),
@UserTel   varchar(50),
@UserMobile   varchar(50),
@QQ   varchar(50),
@MSN   varchar(255),
@Email   varchar(255),
@Purview_Other   int,
@RestrNum   int
)

AS
begin
Update   Ly_Admin  
Set   UserPurview=@UserPurview,RealName=@RealName,UserTel=@UserTel,UserMobile=@UserMobile,QQ=@QQ,MSN=@MSN,Email=@Email,Purview_Other=@Purview_Other,RestrNum=@RestrNum
where   (UserID=@UserID)
end
GO


程序中的部分代码:如果需要更多,可以补充,尝试了两种入库方式都失败,挺郁闷的


                //SqlConnection   conn   =   ConnDB.OpenConn();
                //try
                //{
                //         conn.Open();
                //         SqlCommand   cmd   =   new   SqlCommand( "Ly_ModifyAdminInfo ",   conn);
                //         cmd.CommandType   =   CommandType.StoredProcedure;
                //         cmd.Parameters.Add( "@UserID ",   SqlDbType.Int);
                //         cmd.Parameters[ "@UserID "].Value   =   Convert.ToInt32(UserID);
                //         cmd.Parameters.Add( "@UserPurview ",   SqlDbType.Int);
                //         cmd.Parameters[ "@UserPurview "].Value   =   Convert.ToInt32(Request.Form[ "UserPurview "]);
                //         cmd.Parameters.Add( "@RealName ",   SqlDbType.VarChar,   50);
                //         cmd.Parameters[ "@RealName "].Value   =   tbxRealName.Text.Trim();


                //}
                //catch(Exception)
                //{

                //}

                //开始入库操作
                SqlParameter[]   paramters   =
                        {
                                new   SqlParameter( "@UserID ",SqlDbType.Int),//用户ID
                                new   SqlParameter( "@UserPurview ",SqlDbType.Int),//用户主权限
                                new   SqlParameter( "@RealName ",SqlDbType.VarChar,50),//真实姓名
                                new   SqlParameter( "@UserTel ",SqlDbType.VarChar,50),//联系电话


                                new   SqlParameter( "@UserMobile ",SqlDbType.VarChar,50),//联系手机
                                new   SqlParameter( "@QQ ",SqlDbType.VarChar,50),//QQ
                                new   SqlParameter( "@MSN ",SqlDbType.VarChar,255),//MSN
                                new   SqlParameter( "@Email ",SqlDbType.VarChar,255),//Email
                                new   SqlParameter( "@Purview_Other ",SqlDbType.Int),//二级权限
                                new   SqlParameter( "@RestrNum ",SqlDbType.Int)//业务员限制

                        };
                paramters[0].Value   =   Convert.ToInt32(UserID);//用户ID
                paramters[1].Value   =   Convert.ToInt32(Request.Form[ "UserPurview "].Trim());//用户主权限
                paramters[2].Value   =   tbxRealName.Text.Trim().ToString();//真实姓名
                paramters[3].Value   =   tbxUserTel.Text.Trim().ToString();//联系电话
                paramters[4].Value   =   tbxUserMobile.Text.Trim().ToString();//手机
                paramters[5].Value   =   tbxQQ.Text.Trim().ToString();//QQ
                paramters[6].Value   =   tbxMSN.Text.Trim().ToString();//MSN
                paramters[7].Value   =   tbxEmail.Text.Trim().ToString();//Email
                paramters[8].Value   =   PurviewOther;//二级权限
                paramters[9].Value   =   tbxRestrNum.Text.Trim().ToString();//业务员限制
                //foreach   (SqlParameter   parm   in   paramters)
                //         Response.Write(parm.ToString()   +   "||||| "   +   parm.Value   +   " <br> ");
                //Response.End();
                try
                {
                        SqlConnection   conn=ConnDB.OpenConn();
                        conn.Open();
                        SqlCommand   cmd   =   new   SqlCommand( "Ly_ModifyAdminInfo ",   conn);
                        cmd.CommandType   =   CommandType.StoredProcedure;
                        foreach   (SqlParameter   parm   in   paramters)


                                cmd.Parameters.Add(parm);
                        try
                        {
                                int   i   =   cmd.ExecuteNonQuery();
                                Response.Write(i);
                        }
                        catch(Exception   e2)
                        {
                                Response.Write(e2.Message);
                        }
                        //int   i   =   ConnDB.RunParaMeters( "Ly_ModifyAdminInfo ",   paramters);
                        //if   (i   >   0)
                        //{
                        //         //Response.Redirect( "Admin_Admin.aspx ");
                        //}
                        //else
                        //{
                        //         Response.Write(MyUser.Admin_ShowErr( " <br   /> <li> 数据执行失败 </li> "));
                        //}
                }
                catch   (Exception   e1)
                {
                        Response.Write(e1.Message);
                }




[解决办法]
报的是什么错
[解决办法]
先试下直接运行存储过程有没有错误吧.
[解决办法]
既然执行过,那程序就没有问题,看看数据库里要该的数据UserID给的是否正确吧,执行了未必就是修改了

热点排行