hallo,
Op dit moment ben ik bezig om een oracle database in te richten. Ik heb een aantal tabellen aangemaakt zoals de tabel lid. Hierin wordt een postcode geregistereed. Ik wil graag controleren of de postcode die ingevoerd is uit 6 karakters bestaan en begint met 4 cijfers en 2 letters. Ik heb hiervoor de volgende functie geschreven:
Ik krijg nu telkens de volgende melding:
functie FORMAAT_POSTCODE wordt zonder waarde op regel 27 geretouneerd
Ik heb gezocht op internet maar kon hierover nog niet bruikbaars vinden. Weet iemand toevallig wat ik vergeet of verkeerd doe? De code is overigens nog niet helemaal af maar voordat ik verder ga met extra contolles e.d. wil dit eerst werkend hebben.
Op dit moment ben ik bezig om een oracle database in te richten. Ik heb een aantal tabellen aangemaakt zoals de tabel lid. Hierin wordt een postcode geregistereed. Ik wil graag controleren of de postcode die ingevoerd is uit 6 karakters bestaan en begint met 4 cijfers en 2 letters. Ik heb hiervoor de volgende functie geschreven:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| create or replace function formaat_postcode(postcode in varchar2)
return varchar2
is
postcode_lengte number(1);
postcode_cijfers number(4);
postcode_letters varchar2(2);
begin
if length(postcode) > 6
then
return null;
end if;
if length(postcode) < 6
then
return null;
end if;
if length(postcode) = 6
then
postcode_cijfers := substr(postcode,1,4);
postcode_letters := substr(postcode,5,2);
if postcode_cijfers between 0000 and 9999
then
return to_char( postcode_cijfers ) || upper( postcode_letters );
else
return null;
end if;
end if;
end; |
Ik krijg nu telkens de volgende melding:
functie FORMAAT_POSTCODE wordt zonder waarde op regel 27 geretouneerd
Ik heb gezocht op internet maar kon hierover nog niet bruikbaars vinden. Weet iemand toevallig wat ik vergeet of verkeerd doe? De code is overigens nog niet helemaal af maar voordat ik verder ga met extra contolles e.d. wil dit eerst werkend hebben.