Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да извикам процедура за връщане на Oracle CURSOR в java

Почти по същия начин като 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);

Или ако предпочитате, за да си приличате още повече:

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

Опитахте се да го извикате като процедура с два параметъра, а не като функция с един; не можете произволно да промените това във вашето обаждане.

Можете да върнете курсора обратно с:

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

... и след това да го третираме като всеки друг набор от резултати.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Процедура за изпълнение на Oracle с един входящ параметър и множество изходящи параметър

  2. 12c Редактиране на данни

  3. Как мога да получа броя на дните между 2 дати в Oracle 11g?

  4. Fluent NHibernate 3 и Oracle.DataAccess

  5. Как да променя схемата по подразбиране в sql developer?