Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Memanggil prosedur Oracle yang mengembalikan baris menggunakan SimpleJdbcCall di Spring

Ini adalah kode yang saya gunakan untuk memanggil suatu fungsi:

RowMapper<String> rm = new ParameterizedRowMapper<String>() {
    @Override
    public String mapRow(ResultSet rs, int rowNum) throws SQLException {
        return rs.getString(1);
    }
};
myStoredProcedure = new SimpleJdbcCall(DataSourceConnection.getDataSource())
        .withCatalogName("PACKAGE")
        .withFunctionName("GET_ALIAS")
        .returningResultSet("return", rm);

MapSqlParameterSource params = new MapSqlParameterSource();
params.addValue("P_ID",userStr);
params.addValue("P_DOMAIN_ALIAS", domain[0]);
List<String> list = myStoredProcedure.executeFunction(List.class,params);

dan jika Anda tidak dapat menggunakan metadata maka ini adalah kodenya:

RowMapper<String> rm = new ParameterizedRowMapper<String>() {
    @Override
    public String mapRow(ResultSet rs, int rowNum) throws SQLException {
        return rs.getString(1);
    }
};
SqlParameter emailParam = new SqlParameter("P_ID", OracleTypes.VARCHAR);
SqlParameter domainParam = new SqlParameter("P_DOMAIN_ALIAS", OracleTypes.VARCHAR);
SqlOutParameter resultParam = new SqlOutParameter("return", OracleTypes.CURSOR);
myStoredProcedure = new SimpleJdbcCall(DataSourceConnection.getDataSource())
        .withCatalogName("PACKAGE")
        .withFunctionName("GET_ALIAS")
        .withoutProcedureColumnMetaDataAccess()
        .returningResultSet("return", rm)
        .declareParameters(resultParam, emailParam, domainParam);

MapSqlParameterSource params = new MapSqlParameterSource();
params.addValue("P_ID",userStr);
params.addValue("P_DOMAIN_ALIAS", domain[0]);
List<String> list = myStoredProcedure.executeFunction(List.class,params);



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat terhubung ke Oracle DB mendapatkan kesalahan sebagai java.sql.SQLException:Pengecualian Io:Adaptor Jaringan tidak dapat membuat koneksi

  2. Cara mengaktifkan ekstensi untuk oci8 (Oracle) di php.ini - PHP Warning:PHP Startup:in Unknown on line 0

  3. Pilih Kumpulkan Massal ke Contoh Oracle

  4. Apakah PS/SQL Oracle memerlukan urutan entri tertentu di bagian `deklarasikan` dari sebuah blok

  5. mengubah kueri DB2 menjadi kueri Oracle