changes
This commit is contained in:
@ -1,2 +0,0 @@
|
|||||||
alter table mieter
|
|
||||||
add column iban varchar(34);
|
|
@ -1,3 +1,6 @@
|
|||||||
|
alter table mieter
|
||||||
|
add column iban varchar(34);
|
||||||
|
|
||||||
delimiter //
|
delimiter //
|
||||||
|
|
||||||
create or replace function format_iban(p_iban varchar(34)) returns varchar(34)
|
create or replace function format_iban(p_iban varchar(34)) returns varchar(34)
|
||||||
@ -30,4 +33,32 @@ begin
|
|||||||
end;
|
end;
|
||||||
//
|
//
|
||||||
|
|
||||||
|
create or replace function check_iban(p_iban varchar(34)) returns boolean
|
||||||
|
begin
|
||||||
|
declare v_country varchar(2);
|
||||||
|
declare v_result boolean;
|
||||||
|
declare v_rearranged_iban varchar(36);
|
||||||
|
declare v_numeric_iban decimal(36, 0);
|
||||||
|
declare v_numeric_result decimal(36, 0);
|
||||||
|
|
||||||
|
set v_country = substring(p_iban from 1 for 2);
|
||||||
|
|
||||||
|
if (v_country = 'DE') then
|
||||||
|
set v_rearranged_iban = concat(substring(p_iban from 5), '1314', substring(p_iban from 3 for 2));
|
||||||
|
set v_numeric_iban = cast(v_rearranged_iban as decimal(36, 0));
|
||||||
|
set v_numeric_result = v_numeric_iban % 97;
|
||||||
|
if (v_numeric_result = 1) then
|
||||||
|
set v_result = TRUE;
|
||||||
|
else
|
||||||
|
set v_result = FALSE;
|
||||||
|
end if;
|
||||||
|
else
|
||||||
|
set v_result = TRUE;
|
||||||
|
end if;
|
||||||
|
|
||||||
|
return v_result;
|
||||||
|
end;
|
||||||
|
//
|
||||||
|
|
||||||
|
|
||||||
delimiter ;
|
delimiter ;
|
||||||
|
Reference in New Issue
Block a user