thelittlewozniak

Untitled

Dec 28th, 2018
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PL/SQL 0.98 KB | None | 0 0
  1.   FUNCTION ADD(
  2.         p_user SCHOOLING.iduser%TYPE,
  3.         p_name SCHOOL.name%TYPE,
  4.         p_address SCHOOL.address%TYPE,
  5.         p_type SCHOOL.type%TYPE,
  6.         p_beginDate SCHOOLING.beginDate%TYPE,
  7.         p_endDate SCHOOLING.endDate%TYPE,
  8.         p_graduate SCHOOLING.graduate%TYPE )
  9.     RETURN NUMBER
  10.   AS
  11.     CURSOR c_school IS SELECT idSchool FROM SCHOOL WHERE name=p_name AND address=p_address AND TYPE=p_type;
  12.     cur_school SCHOOL%ROWTYPE;
  13.     c_idschool NUMBER;
  14.     idschling NUMBER
  15.   BEGIN
  16.     OPEN school;
  17.     LOOP
  18.         FETCH c_school IN cur_school;
  19.         IF cur_school%FOUND THEN
  20.             c_idschool:=cur_school.idSchool;
  21.         ELSE
  22.             INSERT INTO SCHOOL(name,address,TYPE) VALUES(p_name,p_address,p_type) returning idSchool INTO idSchool;
  23.             EXIT;
  24.         END IF;
  25.     INSERT
  26.     INTO SCHOOLING
  27.       (
  28.         iduser,
  29.         idSchool,
  30.         beginDate,
  31.         endDate,
  32.         graduate
  33.       )
  34.       VALUES
  35.       (
  36.         p_user,
  37.         c_idschool,
  38.         p_beginDate,
  39.         p_endDate,
  40.         p_graduate
  41.       ) returning idschooling INTO idschling;
  42.     RETURN idschling;
  43. END ADD;
Advertisement