Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE OR REPLACE
- FUNCTION PERSON_ID
- (
- searchString IN VARCHAR2
- ) RETURN NUMBER IS
- id person.person%TYPE;
- too_many EXCEPTION;
- not_found EXCEPTION;
- CURSOR get_person_id IS
- SELECT person FROM person WHERE name LIKE searchString;
- CURSOR get_person_id2 IS
- SELECT person FROM person WHERE realname LIKE searchString;
- BEGIN
- OPEN get_person_id;
- IF get_person_id%NOTFOUND THEN
- OPEN get_person_id2;
- IF get_person_id%NOTFOUND THEN
- RAISE not_found;
- ELSIF get_person_id%ROWCOUNT > 1 THEN
- RAISE too_many;
- ELSE
- FETCH get_person_id2 INTO id;
- END IF;
- ELSIF get_person_id%ROWCOUNT > 1 THEN
- RAISE too_many;
- ELSE
- FETCH get_person_id INTO id;
- END IF;
- RETURN id;
- EXCEPTION
- WHEN too_many THEN
- DBMS_OUTPUT.put_line('Fehler: Es wurden mehrere passende Einträge gefunden.');
- WHEN not_found THEN
- DBMS_OUTPUT.put_line('Fehler: Es wurde kein passender Eintrag gefunden.');
- END PERSON_ID;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement