只要域名匹配,输入域名即可在数据库中搜索,无论域名是高位还是低位。
示例。数据库中的“ hotmail.com”,如果我输入“ hOTmAIL.Com”。它仍然找到域名“ hotmail.com”。
cursor E_info is select Email_Address from broker
where REGEXP_LIKE (substr(Email_Address, instr(Email_Address,'@')+1), old_email);
您可以在不使用regexp_like的情况下执行此操作。
下
select * from test where lower(substr(email_address,instr(email_address,'@')+1))=lower('HotMail.com');
与正则匹配时相比,与regexp_like相比,返回结果更快。
create or replace procedure PR_Q3
(old_email in varchar2, new_email in varchar2)
authid current_user
is
cursor E_info is select Email_Address from broker
where REGEXP_LIKE (substr(Email_Address, instr(Email_Address,'@')+1), old_email);
v_email E_info%rowtype;
begin
open E_info;
loop
fetch E_info into v_email;
exit when E_info%notfound;
update broker set
Email_Address = replace(Email_Address,substr(Email_Address,instr(Email_Address,'@')+1),new_email)
where Email_Address = v_email.Email_Address;
end loop;
close E_info;
end PR_Q3;