sql >> Database teknologi >  >> RDS >> Oracle

Hvordan man opretter Oracle-lagret procedure, som kan returnere specifikke enheder såvel som alle enheder

Her er et simpelt eksempel:

Overvej tabellen:PERSONS (person_id, name)

Denne funktion returnerer en markør, der returnerer enten én post eller alle poster, hvis der ikke er angivet noget argument:

CREATE FUNCTION get_person
   (person_id IN persons.person_id%TYPE := NULL)
   RETURN SYS_REFCURSOR IS
   rc SYS_REFCURSOR;
BEGIN
   OPEN rc FOR
     SELECT *
     FROM   persons p
     WHERE  p.person_id = get_person.person_id
     OR     get_person.person_id IS NULL;
   RETURN rc;
END;


  1. Lej eller bliv ansat:En datamodel for rekrutteringsprocessen

  2. Sortering af rækker for rækker i en anden tabel for at udfylde en What's Hot-liste

  3. Hvordan kan vi bruge en af ​​valideringerne i fjederstøvler?

  4. HikariCP 1.4.0 MBean InstanceNotFoundException