我需要一个 pl sql 程序来重置密码
Posted
技术标签:
【中文标题】我需要一个 pl sql 程序来重置密码【英文标题】:i need a pl sql procedure to reset password 【发布时间】:2015-03-04 05:27:05 【问题描述】:我需要一个 pl sql 代码来重置旧密码,我完成了密码锁定 3 次尝试,之后我必须编写代码来重置密码,这是执行密码 3 尝试锁定的代码,我需要重置密码代码
Create or replace
FUNCTION x_pwd(
p_user IN VARCHAR2,
p_password IN VARCHAR2)
RETURN VARCHAR2
IS
l_error NUMBER;
l_count NUMBER;
BEGIN
SELECT error
INTO l_error
FROM credentials
WHERE username = p_user;
IF(l_error >= 3) THEN
RETURN 'Authentication failed. Reached incorrect number of attempts';
ELSE
SELECT COUNT(id)
INTO l_count
FROM credentials
WHERE username = p_user
AND password = p_password;
IF l_count > 0 THEN
UPDATE credentials SET error = 0 WHERE username = p_user;
RETURN 'LOGIN SUCCESSFUL';
ELSE
UPDATE credentials SET error = l_error+1 WHERE username = p_user;
RETURN 'LOGIN FAILED';
END IF;
END IF;
COMMIT;
END;
【问题讨论】:
不要只是提出另一个重复的问题 - 用可以回答的实际问题编辑您的第一个问题。 【参考方案1】:检查以下PLSQL代码重置密码:
BEGIN
UPDATE credentials
SET password = p_password -- use as parameter in procedure
WHERE username = p_user;
-- or you can include "and id = p_id" in where clause
IF SQL%ROWCOUNT > 0
THEN
COMMIT;
RETURN 'Password Reset Successful.';
ELSE
RETURN 'Password Reset Failed. Invalid User Name';
END IF;
END;
【讨论】:
以上是关于我需要一个 pl sql 程序来重置密码的主要内容,如果未能解决你的问题,请参考以下文章