Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Jak zdefiniować funkcję pl sql z dynamicznymi typami zwrotów w Oracle?

Możesz to zaimplementować, używając słabo określonego kursora odwołania jako typu zwracanego. Jest to szczególnie łatwe do zaimplementowania z interfejsu klienta przy użyciu JDBC, ponieważ zwracany typ kursora można przejrzeć tak jak każdy wynik zapytania, a metadane można odpytywać za pomocą ResultSet.getMetaData(). Oto przykład:

CREATE OR REPLACE PROCEDURE retrieve_info(field_id in integer, p_cursor in out sys_refcursor)
AS
BEGIN
  open p_cursor for 'select * from emp';
END;

Zapytanie w cudzysłowie może być dowolnym, który zwraca dowolny typ, dla dowolnej liczby kolumn.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak używać funkcji NVL() w Oracle

  2. ORA-00942:tabela lub widok nie istnieje — Oracle

  3. Wybierz słowa między przecinkami (z wyłączeniem podwójnych cudzysłowów) za pomocą regexp_substr

  4. Oracle usuwa dane ze zdalnej tabeli SQL Server

  5. Jak mogę w rozsądny sposób rejestrować instrukcje UPDATE przy użyciu rejestrowania sterownika Oracle?