-
创建用户成员资格。
CREATE PROCEDURE aspnet_Membership_CreateUser
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@Password
nvarchar(128),
@PasswordSalt
nvarchar(128),
@Email
nvarchar(256),
@PasswordQuestion
nvarchar(256),
@PasswordAnswer
nvarchar(128),
@IsApproved
bit,
@CurrentTimeUtc
datetime,
@CreateDate
datetime = NULL,
@UniqueEmail
int = 0,
@PasswordFormat
int = 0,
@UserId
uniqueidentifier OUTPUT
)
返回值:成功返回0;
调用 aspnet_Applications_CreateApplication 失败,返回 -1;
调用 aspnet_Users_CreateUser 失败,返回 -1;
如果 aspnet_Users_CreateUser 返回为 -1 ,返回10;
@UserId 与用户表(aspnet_Users) 中的 UserID 不一致,返回 6;
当用户成员资格表(aspnet_Memberships) 中 Emai 字段值被要求唯一时,
创建用户成员资格导致 Email 重复,返回7;
用户在用户成员资格表(aspnet_Memberships) 中已经存在,返回6;
发生错误,返回-1。
-
更改用户成员资格数据。
CREATE PROCEDURE aspnet_Membership_UpdateUser
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@Email
nvarchar(256),
@Comment
ntext,
@IsApproved
bit,
@LastLoginDate
datetime,
@LastActivityDate
datetime,
@UniqueEmail
int,
@CurrentTimeUtc
datetime
)
该过程先更新用户表(aspnet_Users)中的最后活动时间(LastActivityDate) 字段;
然后更改用户成员资格表(aspnet_Memberships) 中的Email、备注(Comment)、
是否启用用户成员资格(IsApproved)、最后登录时间(LastLoginDate)字段。
返回值:成功返回 0;
用户不存在,返回 1;
当要求Email唯一时,@Email与其他用户的Email重复,返回 7;
发生错误,返回 -1。
-
更改用户成员资格(安全)信息。
CREATE PROCEDURE aspnet_Membership_UpdateUserInfo
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@IsPasswordCorrect
bit,
@UpdateLastLoginActivityDate
bit,
@MaxInvalidPasswordAttempts
int,
@PasswordAttemptWindow
int,
@CurrentTimeUtc
datetime,
@LastLoginDate
datetime,
@LastActivityDate
datetime
)
该过程计算并设置(更改)用户成员资格表(aspnet_Memberships) 中的有关用户帐户安全的字段:
IsLockedOut、LastLockoutDate、FailedPasswordAttemptCount、
FailedPasswordAttemptWindowStart、FailedPasswordAnswerAttemptCount、
FailedPasswordAnswerAttemptWindowStart。
输入参数@UpdateLastLoginActivityDate指示是否在上述操作之前,
先更新最后登录时间(LastLoginDate) 字段和用户表(aspnet_Users)中的最后活动时间(LastActivityDate) 字段。
返回值:成功返回 0;
用户不存在,返回 1;
发生错误,返回 -1。
-
更改用户的密码问题和密码答案
CREATE PROCEDURE aspnet_Membership_ChangePasswordQuestionAndAnswer
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@NewPasswordQuestion
nvarchar(256),
@NewPasswordAnswer
nvarchar(128)
)
返回值:成功返回 0;
失败(用户不存在)返回 1。
-
重置用户密码。
CREATE PROCEDURE aspnet_Membership_ResetPassword
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@NewPassword
nvarchar(128),
@MaxInvalidPasswordAttempts
int,
@PasswordAttemptWindow
int,
@PasswordSalt
nvarchar(128),
@CurrentTimeUtc
datetime,
@PasswordFormat
int = 0,
@PasswordAnswer
nvarchar(128) = NULL
)
-
设置用户密码。
CREATE PROCEDURE aspnet_Membership_SetPassword
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@NewPassword
nvarchar(128),
@PasswordSalt
nvarchar(128),
@CurrentTimeUtc
datetime,
@PasswordFormat
int = 0
)
返回值:成功返回 0;
用户不存在,返回 1;
-
解除用户锁定
CREATE PROCEDURE aspnet_Membership_UnlockUser
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256)
)
返回值:成功返回 0;
用户不存在,返回 1。
-
(LIKE)查询 Email 与 @EmailToMatch 匹配的用户成员资格数据,返回分页用户数据集。
CREATE PROCEDURE aspnet_Membership_FindUsersByEmail
(
@ApplicationName
nvarchar(256),
@EmailToMatch
nvarchar(256),
@PageIndex
int,
@PageSize
int
)
返回值:所有满足条件的行数。
-
(LIKE)查询用户名与@UserNameToMatch匹配的用户成员资格数据,返回分页用户数据集。
CREATE PROCEDURE aspnet_Membership_FindUsersByName
(
@ApplicationName
nvarchar(256),
@UserNameToMatch
nvarchar(256),
@PageIndex
int,
@PageSize
int
)
返回值:所有满足条件的行数。
-
返回分页(所有)用户成员资格数据集。
CREATE PROCEDURE aspnet_Membership_GetAllUsers
(
@ApplicationName
nvarchar(256),
@PageIndex
int,
@PageSize
int
)
返回值:所有满足条件的行数。
-
根据Email查询用户成员资格数据,返回用户数据集(一行)。
CREATE PROCEDURE aspnet_Membership_GetUserByEmail
(
@ApplicationName
nvarchar(256),
@Email
nvarchar(256)
)
返回值:成功返回 0;
用户不存在,返回 1。
-
根据用户名查询用户成员资格数据,返回用户数据集(一行)。
CREATE PROCEDURE aspnet_Membership_GetUserByName
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@CurrentTimeUtc
datetime,
@UpdateLastActivity
bit = 0
)
输入参数@UpdateLastActivity指定是否更新用户表(aspnet_Users)中的最后活动时间(LastActivityDate)字段。
返回值:成功返回 0;
用户不存在,返回 -1。
-
根据用户ID查询用户用户成员资格数据,返回用户数据集(一行)。
CREATE PROCEDURE aspnet_Membership_GetUserByUserId
(
@UserId
uniqueidentifier ,
@CurrentTimeUtc
datetime,
@UpdateLastActivity
bit = 0
)
输入参数@UpdateLastActivity指定是否更新用户表(aspnet_Users)中的最后活动时间(LastActivityDate)字段。
返回值:成功返回 0;
用户不存在,返回 -1。
-
查询用户的密码和存储密码的格式,返回包含用户密码和密码存储格式两个字段的数据据集(一行)。
CREATE PROCEDURE aspnet_Membership_GetPassword
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@MaxInvalidPasswordAttempts
int,
@PasswordAttemptWindow
int,
@CurrentTimeUtc
datetime,
@PasswordAnswer
nvarchar(128) = NULL
-
查询有关用户密码的详细信息,返回用户帐户信息数据集(一行)。
CREATE PROCEDURE aspnet_Membership_GetPasswordWithFormat
(
@ApplicationName
nvarchar(256),
@UserName
nvarchar(256),
@UpdateLastLoginActivityDate
bit,
@CurrentTimeUtc
datetime
)
输入参数@UpdateLastLoginActivityDate指示是否更新最后登录时间(LastLoginDate) 字段
和用户表(aspnet_Users)中的最后活动时间(LastActivityDate) 字段。
返回值:成功返回 0;
用户不存在,返回 1;
用户被锁定,返回 99。
-
获取在线用户数。
CREATE PROCEDURE aspnet_Membership_GetNumberOfUsersOnline
(
@ApplicationName
nvarchar(256),
@MinutesSinceLastInActive
int,
@CurrentTimeUtc
datetime
)
最近@MinutesSinceLastInActive分钟内登录的用户为在线用户,
即满足 LastActivityDate(
datetime) >= @CurrentTimeUtc(
datetime) - @MinutesSinceLastInActive(分钟数)的条件。
返回值:返回在线用户数。