create or replace function MD5 (
vin_string IN VARCHAR2
) RETURN VARCHAR2 IS
BEGIN
RETURN lower(Dbms_Obfuscation_Toolkit.Md5 ( input => utl_raw.cast_to_raw(vin_string)
));
END MD5;
vin_string IN VARCHAR2
) RETURN VARCHAR2 IS
BEGIN
RETURN lower(Dbms_Obfuscation_Toolkit.Md5 ( input => utl_raw.cast_to_raw(vin_string)
));
END MD5;
Create Or Replace Trigger init_user
Before Insert
On SYS_USER
For Each Row
Declare
v_pwdenc varchar2(200);
Begin
If (:New.USER_ID is Null) Then
Select USER_SEQ.Nextval Into :New.USER_ID From dual;
If(:New.PASSWORD Is Null) Then
Select :New.USERNAME Into :New.PASSWORD From dual;
Else
v_pwdenc:=MD5(:New.Password);
Select v_pwdenc Into :New.PASSWORD From dual;
End If;
End If;
End;
Before Insert
On SYS_USER
For Each Row
Declare
v_pwdenc varchar2(200);
Begin
If (:New.USER_ID is Null) Then
Select USER_SEQ.Nextval Into :New.USER_ID From dual;
If(:New.PASSWORD Is Null) Then
Select :New.USERNAME Into :New.PASSWORD From dual;
Else
v_pwdenc:=MD5(:New.Password);
Select v_pwdenc Into :New.PASSWORD From dual;
End If;
End If;
End;
Create Or Replace Trigger init_user_right
After Insert
On SYS_USER
For Each Row
Begin
insert into SYS_USERGROUP (GROUP_ID, USER_ID)
values (7, :New.USER_ID);
End;
After Insert
On SYS_USER
For Each Row
Begin
insert into SYS_USERGROUP (GROUP_ID, USER_ID)
values (7, :New.USER_ID);
End;
Create Or Replace Trigger delete_user_right
Before Delete
On SYS_USER
For Each Row
Begin
Delete From SYS_USERGROUP Where USER_ID=:Old.USER_ID;
End;
Before Delete
On SYS_USER
For Each Row
Begin
Delete From SYS_USERGROUP Where USER_ID=:Old.USER_ID;
End;
转载于:https://blog.51cto.com/zbtech/182640