Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle प्रक्रिया को कॉल करना जो स्प्रिंग में SimpleJdbcCall का उपयोग करके पंक्तियाँ लौटाता है

यह वह कोड है जिसका उपयोग मैं किसी फ़ंक्शन को कॉल करने के लिए करता हूं:

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);

और यदि आप मेटाडेटा का उपयोग करने में सक्षम नहीं हैं तो यह कोड है:

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. एसक्यूएल संग्रहीत प्रक्रिया में अगर और शर्त

  2. जावा मल्टीकास्ट टाइम टू लिव हमेशा 0 . होता है

  3. oracle में IN फ़ंक्शन के लिए अल्पविराम द्वारा अलग किए गए मान

  4. ईबीएस 12.2.5 और उच्चतर:लॉगिन पेज बटन मिसलिग्न्मेंट

  5. TLS प्रमाणपत्र का उपयोग करके Oracle डेटाबेस से JDBC कनेक्शन