在PL/SQL中验证IBAN

usr*_*ΛΩΝ 3 oracle validation plsql iban

我正在尝试找到一些现成的代码(是的,我的意思是teh codez)来验证PL/SQL中的IBAN帐号.

有人知道一些样品吗?我想有人应该已经实现了......

谢谢

小智 5

这个肯定不受版权保护:

declare
as_iban varchar2(34);
ln_iban number(36, 0);
begin
    as_iban := 'enter your IBAN here';

    ln_iban := to_number(substr(as_iban, 5));
    ln_iban := ln_iban * 100 + (ascii(substr(as_iban, 1, 1)) - 55);
    ln_iban := ln_iban * 100 + (ascii(substr(as_iban, 2, 1)) - 55);
    ln_iban := ln_iban * 100 + to_number(substr(as_iban, 3, 2));
    ln_iban := ln_iban mod 97;

    if ln_iban is null or ln_iban <> 1 then 
        raise_application_error(-2e4, 'invalid IBAN: ' || as_iban);
    end if; 
end;
/
Run Code Online (Sandbox Code Playgroud)

  • 欢迎来到Stack Overflow!请解释*为什么此代码解决了所提出的问题,而不是仅发布一段代码.没有解释,这不是答案. (2认同)