createprocedure UpdateRoleAuth @RoleIDint, @RoleNamevarchar(50), @Remarkvarchar(200), @AuthListvarchar(8000) as begintran update RoleInfo set RoleName=@RoleID,Remark=@Remarkwhere RoleInfoAutoID=@RoleID deletefrom RoleAuthorizeInfo where RoleInfoAutoID=@RoleID declare@iint set@AuthList=@AuthList+',' set@i=charindex(',',@AuthList) while@i>0 begin insertinto RoleAuthorizeInfo values(@RoleID,convert(int,left(@AuthList,@i-1))) set@AuthList=substring(@AuthList,@i+1,8000) set@i=charindex(',',@AuthList) end if@@error<>0 begin rollbacktran end else begin committran end go