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

Jak wywołać procedurę zwrotu Oracle CURSOR w java?

W podobny sposób jak PHP:

String dbCall = "{ ? = call pa_internal_admin.fn_search_level_1(?) }";
proc = dbConn.connection().prepareCall( dbCall );
proc.registerOutParameter(1, OracleTypes.CURSOR);
proc.setString(2, searchText);

Lub, jeśli wolisz, być jeszcze bardziej podobnym:

String dbCall = "BEGIN ? := pa_internal_admin.fn_search_level_1(?); END;";

Próbowałeś wywołać to jako procedurę z dwoma parametrami, a nie funkcję z jednym; nie możesz dowolnie tego zmienić w swojej rozmowie.

Kursor można odzyskać za pomocą:

OracleResultSet rSet = (OracleResultSet) proc.getCursor(1);

... a następnie potraktuj go jak każdy inny zestaw wyników.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. alternatywa dla listygg w Oracle?

  2. Znajduje się w kursorze, gdy warunek jest spełniony

  3. OdbcConnection zwraca chińskie znaki jako ?

  4. Nieokreślony błąd podczas wykonywania skryptu vba

  5. Pobieranie AbstractMethodError podczas tworzenia połączenia z bazą danych Oracle9 za pomocą serwera Tomcat 8