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

Kæmper med foråret SimpleJdbcCall for at kalde Oracle-funktion

Det ser ud til, at du bruger forkert metode call:Din kode:.withProcedureName("MYFUNCTION")[..] skal erstattes af.withFunctionName[...]

her er et simpelt eksempel på hele funktionskald:

JdbcTemplate jdbc = new JdbcTemplate(txManager.getDataSource());
    SimpleJdbcCall jdbcCall = new SimpleJdbcCall(jdbc)
            .withCatalogName("p_adm_www")
            .withFunctionName("fn_usr_get_login_sequence")
            .declareParameters(new SqlOutParameter("RETURN", OracleTypes.NUMBER))
            .withoutProcedureColumnMetaDataAccess();
    jdbcCall.setAccessCallParameterMetaData(false);
    BigDecimal returnId = jdbcCall.executeFunction(BigDecimal.class, null);
    return returnId.longValue();



  1. Oracle Case Statement forklaret med tips og eksempler

  2. Laravel beregne summen af ​​to kolonner med en betingelse

  3. MySQL Vælg 3 tilfældige rækker, hvor summen af ​​tre rækker er mindre end værdien

  4. Skift kolonnetype og sæt ikke null