To  use cursor as an OUTPUT paramete in Oracle Store Procedure

I want to return a ref cursor from an oracle store procedure. Is is possible? How? Syntax?

yes I think it is possible its syntax is
CREATE OR REPLACE
PROCEDURE GetEmpRS1 (p_recordset1 OUT SYS_REFCURSOR,
              p_recordset2 OUT SYS_REFCURSOR,
              PARAM IN STRING) AS
BEGIN
  OPEN p_recordset1 FOR
  SELECT RET1
    FROM MYTABLE
    WHERE LOOKUPVALUE > PARAM;
  OPEN p_recordset2 FOR
  SELECT RET2
   FROM MYTABLE
   WHERE LOOKUPVALUE >= PARAM;
END GetEmpRS1;

Similar Messages

  • Create oData service using oracle Store procedure

    Hello Experts,
    I need to create oData service from oracle store procedure,
    what are the steps to do it.
    We are using SMP Integration gateway.
    Please Suggest.
    Regards
    Manish

    Hello Experts,
    Here is my code to join 2 tables , in debug it does not give error, but it gives on only one table output not merged output.
    Please suggest.
    function processRequestSQL(message) {
      //Import statements
      importPackage(com.sap.gateway.ip.core.customdev.util);
      importPackage(java.util);
      importPackage(org.apache.olingo.odata2.api.edm);
      importPackage(com.sap.gateway.core.ip.component.commons);
      importPackage(org.apache.olingo.odata2.api.uri);
      importPackage(com.sap.gateway.ip.core.customdev.logging);
      //Get the SQL statement contained in message body
      var sqlStatement = message.getBody();
      var uriInfo = message.getHeaders().get(ODataExchangeHeaderProperty.UriInfo.toString());
      var map = new HashMap();
      map = uriInfo.getCustomQueryOptions();
      //Create the query and sub query
      var JOIN_WO_WHERE = "INNER JOIN ZONE ON AREA.AREA_ID = ZONE.AREA_ID ";
      var WHERE = " WHERE ";
      var JOIN = " INNER JOIN ZONE ON AREA.AREA_ID = ZONE.AREA_ID ";
      //Modify the SQL statement
      var modifiedSqlStatement = "";
      var entitySet = uriInfo.getStartEntitySet();
      var odataMethod = message.getHeaders().get(ODataExchangeHeaderProperty.ODataMethod.toString());
      modifiedSqlStatement += sqlStatement;
      if (odataMethod.toString() == "GET_FEED") {
      entitySetName = entitySet.getName();
      if (entitySetName == "AREA") {
      if (sqlStatement.indexOf("WHERE") != -1
      || sqlStatement.indexOf("where") != -1) {
      modifiedSqlStatement += JOIN_WO_WHERE;
      } else {
      // modifiedSqlStatement += WHERE;
      modifiedSqlStatement += JOIN;
      //Set the message body back with the modified SQL statement
      message.setBody(modifiedSqlStatement);
      //Logger
      log.logErrors(LogMessage.TechnicalError, "This is first log");
      //Set the message body back with the modified SQL statement
      message.setBody(modifiedSqlStatement);
      //Logger
      log.logErrors(LogMessage.TechnicalError, "This is first log");
    -------------------End Sample Implementation---------------------------------------
      return message;

  • How to Pass multiple parameter into single store procedure

    How to Pass multiple parameter into single store procedure
    like a one to many relationship.
    it is possible then reply me immediatly

    you mean like this .....
    CREATE OR REPLACE procedure display_me(in_param in varchar2,in_default in varchar2 := 'Default') is
    BEGIN
    DBMS_OUTPUT.put_line ('Values is .....'||in_param || '....'||in_default);
    END display_me;
    CREATE OR REPLACE procedure display_me_2 as
    cnt integer :=0;
    BEGIN
    For c1_rec In (SELECT empno,deptno FROM test_emp) Loop
         display_me(in_param => c1_rec.empno);
         cnt := cnt+1;
         end loop;
         DBMS_OUTPUT.put_line('Total record count is ....'||cnt);
    END display_me_2;
    SQL > exec display_me_2
    Values is .....9999....Default
    Values is .....4567....Default
    Values is .....2345....Default
    Values is .....7369....Default
    Values is .....7499....Default
    Values is .....7521....Default
    Values is .....7566....Default
    Values is .....7654....Default
    Values is .....7698....Default
    Values is .....7782....Default
    Values is .....7788....Default
    Values is .....7839....Default
    Values is .....7844....Default
    Values is .....7876....Default
    Values is .....7900....Default
    Values is .....7902....Default
    Values is .....7934....Default
    Values is .....1234....Default
    Total record count is ....18

  • Does OraOLEDB support passing a Ref Cursor as an IN parameter of a Stored Procedure?

    We have a number of Stored Procedures that take a Cursor as an input parameter. Is it possible to call a Stored Procedure of this type with OraOLEDB? If so could you provide a quick sample using VC++/ATL?
    Thanks...

    Thank you for your reply, Yuancai. It would be very useful if the OLE DB team added such an interface to future versions of TCommand. However, for the time being what is the preferred technique for passing large amounts of data to a stored procedure? For instance we have a number of tables that have fifty or more columns. It would be awkward to call a stored procedure with this many parameters. Ideally, one would want to create a structure as a User Defined Type and pass that as a parameter.
    One approach we though of was to pass a XML string though a CLOB parameter and parse it in either a PL/SQL or Java stored procedure. However, while this approach is novel it is not standard. I've found it best to use standard techniques where possible. Any insight you could give would be appreciated.
    Thanks,
    Bryan Wood

  • Updating a table using cursor is taking long time in oracle

    Hi,
    I am working on the oracle database 11gR2. I am trying update a table column which is newly added through cursor. below is the cursor.
    BEGIN
         FOR lcur_tab IN (select l.LOGIN_ID as login_id, lt.ERROR_CODE as error_code from LOGIN l INNER JOIN LOGIN_TASK lt ON (l.LAST_LOGIN_TASK_ID = lt.LOGIN_TASK_ID) )
         LOOP
                   UPDATE ACCOUNT SET LOGIN_ERROR_CODE = lcur_tab.error_code where ACCOUNT_ID IN (SELECT ACCOUNT_ID FROM LOGIN_ACCOUNT where LOGIN_ID = lcur_tab.login_id ) ;
         end LOOP;
         commit;
    END;
    In the cursor we are trying to copy the Login table error_code value to LOGIN_ERROR_CODE of ACCOUNT Table, for the accounts associated with that Login. Here newly added column is LOGIN_ERROR_CODE in account table. this account table have 11million rows in it. when i used the above cursor it took 3hours and still running. So we stopped after that. Is there any way i can change this cursor syntax to update those column values. How can we do this type of updates?
    Also i am planning to run thus update in the background . I don't have much knowledge on the PL/SQL stuff. So please help on this.
    Thanks in advance.
    Edited by: Hari on Mar 21, 2012 10:06 PM

    Is there a reason that you don't want to do this with a single `UPDATE` statement? That should be quite a bit more efficient.
    Something like
    UPDATE account a
       SET login_error_code = (
          select lt.error_code
            from login_task lt
                 join login l on (l.last_login_task_id = lt.login_task_id)
                 join login_account la on (la.login_id = l.login_id)
           where la.account_id = a.account_id )
    WHERE EXISTS (
          select 1
            from login_task lt
                 join login l on (l.last_login_task_id = lt.login_task_id)
                 join login_account la on (la.login_id = l.login_id)
           where la.account_id = a.account_id );Justin

  • How to use LIKE function with a parameter in Oracle REPORT builder??

    how could i use parameter inside a LIKE function in Oracle reports builder?
    it works in SQL plus, but not in report builder!!
    Example:
    select code,desc from item_master where desc
    like '%&give_desc%'; ---works in SQL
    like '%:give_desc%' ---doesn't work in report builder!!

    Hi Renil,
    You will need to use the wildcard character (%) and the concatenation character (||) to join to your user parameter.
    i.e. like '%'||:give_desc||'%'
    Regards,
    John

  • How to passing array as parameter to oracle stored procedure from JPA

    Hi All,
    I need to call a stored proc in Oracle that accepts an array as input parameter.
    Pls let me know how should i call it from my JPA. Is this even possible without using JDBC directly?
    i keep getting the ff error:
    wrong number or types of arguments in call to ....
    my code is something like this:
    String[] myArr...
    Query query = em.createNativeQuery("BEGIN myStoredProc(:arr); END;");
    query.setParameter("arr", myArr);
    Thanks in advance.

    I also fail to get this done my code till now is:
    PLSQL Function:
    function getHtml(pWhere VARCHAR2 DEFAULT NULL,
    pColSort HTP.STRINGARRAY) return clob is
    begin
    errorhndl.Log(pMessage => 'called');
    htp.prn('das ist der test
    for i in 1 .. pColSort.count loop
    htp.p('
    pColSort['||i||']: '||pColSort(i));
    end loop;
    htp.prn('
    <table> <tr> <td> max1.0 </td> <td> max2.0 </td> </tr>');
    htp.prn('<tr> <td> max1.1 </td> <td> max2.1 </td> </tr> </table>');
    htp.prn('test ende');
    return htp.gHtpPClob;
    exception
    when others then
    null;
    end getHtml;
    PLSQL TYPE: (in HTP package - self created - but could be anywhere else too)
    type STRINGARRAY is table of varchar2(256) index by binary_integer;
    JAVA DOA:
    public class ShowReportDOAImpl implements ShowReportDOA {
         private JdbcTemplate jdbcTemplate;
         private SimpleJdbcCall procShowReport;
         public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
              this.jdbcTemplate = jdbcTemplate;
              procShowReport = new SimpleJdbcCall(this.jdbcTemplate)
              .withCatalogName("Show_Report")
              .withFunctionName("getHtml")
              .withoutProcedureColumnMetaDataAccess()
              .declareParameters(
                   new SqlParameter("pWhere", Types.VARCHAR),
                   new SqlParameter("pColSort", Types.ARRAY, "HTP.STRINGARRAY"),
                   new SqlOutParameter("RETURN", Types.CLOB)
         public String readReport(Long id, ParameterHelper ph) {
              String[] sortCol = {"max", "michi", "stefan"};
              String pWhere = "fritz";
              MapSqlParameterSource parms = new MapSqlParameterSource();
              parms.addValue("pWhere", pWhere);
              parms.addValue("pColSort", sortCol, Types.ARRAY, "HTP.STRINGARRAY");
    parms.addValue("pColSort", Arrays.asList(sortCol), Types.ARRAY, "HTP.STRINGARRAY");
    Clob clob = procShowReport.executeFunction(Clob.class, parms);
    String clobString = "";
    try {
         System.out.println("length: "+new Long(clob.length()).intValue());
                   clobString = clob.getSubString(1, new Long(clob.length()).intValue());
              } catch (SQLException e) {
                   e.printStackTrace();
    return clobString;
    EXCEPTION IS:
    org.springframework.jdbc.UncategorizedSQLException: CallableStatementCallback; uncategorized SQLException for SQL [{? = call SHOW_REPORT.GETHTML(?, ?)}]; SQL state [null]; error code [17059]; Konvertierung zu interner Darstellung nicht erfolgreich: [max, michi, stefan]; nested exception is java.sql.SQLException: Konvertierung zu interner Darstellung nicht erfolgreich: [max, michi, stefan]
         org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:83)
         org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
         org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:80)
         org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:969)
         org.springframework.jdbc.core.JdbcTemplate.call(JdbcTemplate.java:1003)
         org.springframework.jdbc.core.simple.AbstractJdbcCall.executeCallInternal(AbstractJdbcCall.java:391)
         org.springframework.jdbc.core.simple.AbstractJdbcCall.doExecute(AbstractJdbcCall.java:354)
         org.springframework.jdbc.core.simple.SimpleJdbcCall.executeFunction(SimpleJdbcCall.java:154)
         at.ontec.cat.config.doa.ShowReportDOAImpl.readReport(ShowReportDOAImpl.java:47)
         at.ontec.cat.http.ShowReport.doGet(ShowReport.java:80)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
         org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    root cause
    java.sql.SQLException: Konvertierung zu interner Darstellung nicht erfolgreich: [max, michi, stefan]
         oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
         oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:161)
         oracle.jdbc.driver.DatabaseError.check_error(DatabaseError.java:860)
         oracle.sql.ARRAY.toARRAY(ARRAY.java:209)
         oracle.jdbc.driver.OraclePreparedStatement.setObjectCritical(OraclePreparedStatement.java:7767)
         oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:7448)
         oracle.jdbc.driver.OraclePreparedStatement.setObjectInternal(OraclePreparedStatement.java:7836)
         oracle.jdbc.driver.OracleCallableStatement.setObject(OracleCallableStatement.java:4586)
         org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:166)
         org.apache.commons.dbcp.DelegatingPreparedStatement.setObject(DelegatingPreparedStatement.java:166)
         org.springframework.jdbc.core.StatementCreatorUtils.setValue(StatementCreatorUtils.java:356)
         org.springframework.jdbc.core.StatementCreatorUtils.setParameterValueInternal(StatementCreatorUtils.java:216)
         org.springframework.jdbc.core.StatementCreatorUtils.setParameterValue(StatementCreatorUtils.java:127)
         org.springframework.jdbc.core.CallableStatementCreatorFactory$CallableStatementCreatorImpl.createCallableStatement(CallableStatementCreatorFactory.java:212)
         org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:947)
         org.springframework.jdbc.core.JdbcTemplate.call(JdbcTemplate.java:1003)
         org.springframework.jdbc.core.simple.AbstractJdbcCall.executeCallInternal(AbstractJdbcCall.java:391)
         org.springframework.jdbc.core.simple.AbstractJdbcCall.doExecute(AbstractJdbcCall.java:354)
         org.springframework.jdbc.core.simple.SimpleJdbcCall.executeFunction(SimpleJdbcCall.java:154)
         at.ontec.cat.config.doa.ShowReportDOAImpl.readReport(ShowReportDOAImpl.java:47)
         at.ontec.cat.http.ShowReport.doGet(ShowReport.java:80)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
         javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
         org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter.doFilterInternal(OpenEntityManagerInViewFilter.java:113)
         org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    Please help!!
    Please help!!

  • About JDBC CALL STORE PROCEDURE with out parameter is greater than 4000

    Hi Guys,
    I have a problem call store procedure with a large string.
    as i know varchar2 can contain 32767 characters in pl/sql .
    But when i used varchar2 as a out parameter in a store procedure, if the out parameter is greater than 4000 characters , it always give me error message as 'the buffer is too small'.
    why it happened?
    I read some article that says i need configure a property in data-source.xml , and jdbc 10g driver already solved this problem, but i used jdev 10.1.3.2 ,the driver should be fine.
    How can i solve this problem?
    Thanks in advance,
    AppCat

    Object is Foundation, Execute Script
    This is for a query, you can change to a stored procedure call. Pull the value back in the Java code then put into the process variable.
    import javax.naming.InitialContext;
    import javax.sql.DataSource;
    import java.sql.*;
    PreparedStatement stmt = null;
    Connection conn = null;
    ResultSet rs = null;
    try {
    InitialContext ctx = new InitialContext();
    DataSource ds = (DataSource) ctx.lookup("java:IDP_DS");
    conn = ds.getConnection();
    stmt = conn.prepareStatement("select FUBAR from TB_PT_FUBAR where PROCESS_INSTANCE_ID=?");
    stmt.setLong(1, patExecContext.getProcessDataLongValue("/process_data/@inputID"));
    rs = stmt.executeQuery();
    rs.next();
    patExecContext.setProcessDataStringValue("/process_data/outData", rs.getString(1));
    } finally {
    try {
    rs.close();
    } catch (Exception rse) {}
    try {
    stmt.close();
    } catch (Exception sse) {}
    try {
    conn.close();
    } catch (Exception cse) {}

  • How to use Oracle refcursor dataset output parameter from SP

    Can I request for help on how to use Oracle Output parameter from a stored procedure as a source. I need the output tobe stored in a flat file
    Thanks
    Abhijit
    Message was edited by:
    Abhijit77

    yes I would like to use it for ODI.. I would like the ouput of the refcursor to be fed to a text file using ODI. How to handle the records returned by the refcursor and map with txt file.

  • Server Crashes when using Cursor Vars in Stored Procedure

    Can anyone make a suggestion
    We are experiencing a problem that causes our Weblogic Server to crash
    when a JDBC call is made to our Oracle database.
    Host Details
    Operating System: Solaris Version 8
    SunOS 5.8 Generic_108528-15 sun4u sparc SUNW,UltraAX-i2
    WebLogic Server 6.1 SP1 09/18/2001 14:28:44 #138716
    Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
    JDBC Driver Weblogic JDriver for Oracle
    The jdbc command that causes the problem is similar the spcursor
    example code file:
    // Here we prepare a CallableStatement using a WebLogic extension
    // to JDBC that supports binding an Oracle cursor to an output
    // parameter. Register the output parameter type as OTHER . . .
    cstmt =
         (weblogic.jdbc.common.OracleCallableStatement)conn.prepareCall("BEGIN
    OPEN ? FOR select * from emp; END;");
    cstmt.registerOutParameter(1, java.sql.Types.OTHER);
    The crash happens when the re.next() method is invoked after the
    execute()
    This is the core dump message that is generated:
    An unexpected exception has been detected in native code outside the
    VM.
    Unexpected Signal : 11 occurred at PC=0xd339f37c
    Function name=kpcxk2u
    Library=/u01/app/oracle/product/8.1.7/lib/libclntsh.so.8.0
    Current Java thread:
    at weblogic.db.oci.OciCursor.arrayFetch(Native Method)
    at weblogic.db.oci.OciCursor.oci_arrayFetch(OciCursor.java:2002)
    at weblogic.jdbc.oci.ResultSet.next(ResultSet.java:759)
    at weblogic.jdbc.pool.ResultSet.next(ResultSet.java:180)
    at weblogic.jdbc.rmi.internal.ResultSetImpl.next(ResultSetImpl.java:132)
    at weblogic.jdbc.rmi.internal.ResultSetImpl_WLSkel.invoke(Unknown
    Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:296)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:265)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    Dynamic libraries:
    0x10000 /opt/bea/jdk131/jre/bin/../bin/sparc/native_threads/java
    0xff350000 /usr/lib/libthread.so.1
    0xff390000 /usr/lib/libdl.so.1
    0xff200000 /usr/lib/libc.so.1
    0xff330000 /usr/platform/SUNW,UltraAX-i2/lib/libc_psr.so.1
    0xfe480000 /opt/bea/jdk131/jre/lib/sparc/hotspot/libjvm.so
    0xff2e0000 /usr/lib/libCrun.so.1
    0xff1e0000 /usr/lib/libsocket.so.1
    0xff100000 /usr/lib/libnsl.so.1
    0xff0d0000 /usr/lib/libm.so.1
    0xff310000 /usr/lib/libw.so.1
    0xff0b0000 /usr/lib/libmp.so.2
    0xff080000 /opt/bea/jdk131/jre/lib/sparc/native_threads/libhpi.so
    0xff050000 /opt/bea/jdk131/jre/lib/sparc/libverify.so
    0xfe440000 /opt/bea/jdk131/jre/lib/sparc/libjava.so
    0xff020000 /opt/bea/jdk131/jre/lib/sparc/libzip.so
    0xfe230000 /opt/bea/jdk131/jre/lib/sparc/libnet.so
    0xfe160000 /usr/lib/nss_files.so.1
    0xd3700000 /opt/bea/wlserver6.1/lib/solaris/oci817_8/libweblogicoci37.so
    0xd3000000 /u01/app/oracle/product/8.1.7/lib/libclntsh.so.8.0
    0xfd090000 /usr/lib/libC.so.5
    0xfd3b0000 /u01/app/oracle/product/8.1.7/lib/libwtc8.so
    0xfd070000 /usr/lib/libgen.so.1
    0xfd050000 /usr/lib/libsched.so.1
    0xfd020000 /usr/lib/libaio.so.1
    0xfafd0000 /opt/bea/wlserver6.1/lib/solaris/libmuxer.so
    Local Time = Thu Apr 3 10:39:37 2003
    Elapsed Time = 178
    # The exception above was detected in native code outside the VM
    # Java VM: Java HotSpot(TM) Client VM (1.3.1-b24 mixed mode)
    # An error report file has been saved as hs_err_pid7599.log.
    # Please refer to the file for further information.
    Abort - core dumped
    TIA
    Tony

    Tony,
    "Tony Ross" <[email protected]> wrote in message
    news:[email protected]...
    Thanks Mitesh for your response.
    We have followed your advice on using the 901 driver and updating the
    config.xml file. Alas it has not stopped the Solaris WLS from
    crashing.Actually, Mitesh sugested you replacing weblogic driver
    with oracle one. As it follows from the stacktrace, it has
    not been done.
    I'd also recommend moving to oracle thin driver as it
    doesn't have native code thus is more stable.
    Regards,
    Slava Imeshev
    In addition to this we tried using WLS 6.1 SP2 on a Win2000 box
    (connecting to same database). We managed to crash this instance as
    well. The core dump is as follows:
    An unexpected exception has been detected in native code outside the
    VM.
    Unexpected Signal : EXCEPTION_ACCESS_VIOLATION occurred at
    PC=0x6021bc08
    Function name=kpcxk2u
    Library=C:\Oracle\Ora81\BIN\oracommon8.dll
    Current Java thread:
    at weblogic.db.oci.OciCursor.arrayFetch(Native Method)
    - locked <2956f78> (a weblogic.db.oci.OciCursor)
    at weblogic.db.oci.OciCursor.oci_arrayFetch(OciCursor.java:2022)
    at weblogic.jdbc.oci.ResultSet.next(ResultSet.java:759)
    - locked <3423480> (a weblogic.db.oci.OciConnection)
    at weblogic.jdbc.rmi.internal.ResultSetImpl.next(ResultSetImpl.java:133)
    at weblogic.jdbc.rmi.internal.ResultSetImpl_WLSkel.invoke(Unknown
    Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
    atweblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
    atweblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:2
    2)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    Dynamic libraries:
    0x00400000 - 0x00405000 c:\bea\jdk131\bin\java.exe
    0x77F80000 - 0x77FFB000 C:\WINNT\System32\ntdll.dll
    0x77DB0000 - 0x77E0D000 C:\WINNT\system32\ADVAPI32.dll
    0x77E80000 - 0x77F36000 C:\WINNT\system32\KERNEL32.DLL
    0x77D30000 - 0x77DA1000 C:\WINNT\system32\RPCRT4.DLL
    0x78000000 - 0x78046000 C:\WINNT\system32\MSVCRT.dll
    0x6D420000 - 0x6D4EE000 c:\bea\jdk131\jre\bin\hotspot\jvm.dll
    0x77E10000 - 0x77E75000 C:\WINNT\system32\USER32.dll
    0x77F40000 - 0x77F7C000 C:\WINNT\system32\GDI32.DLL
    0x77570000 - 0x775A0000 C:\WINNT\System32\WINMM.dll
    0x6D220000 - 0x6D227000 c:\bea\jdk131\jre\bin\hpi.dll
    0x6D3B0000 - 0x6D3BD000 c:\bea\jdk131\jre\bin\verify.dll
    0x6D250000 - 0x6D266000 c:\bea\jdk131\jre\bin\java.dll
    0x6D3C0000 - 0x6D3CD000 c:\bea\jdk131\jre\bin\zip.dll
    0x6D2A0000 - 0x6D2BB000 c:\bea\jdk131\jre\bin\jdwp.dll
    0x6D1D0000 - 0x6D1D5000 c:\bea\jdk131\bin\dt_socket.dll
    0x75030000 - 0x75043000 C:\WINNT\System32\ws2_32.dll
    0x75020000 - 0x75028000 C:\WINNT\System32\WS2HELP.DLL
    0x74FD0000 - 0x74FED000 C:\WINNT\system32\msafd.dll
    0x75010000 - 0x75017000 C:\WINNT\System32\wshtcpip.dll
    0x6D340000 - 0x6D348000 C:\bea\jdk131\jre\bin\net.dll
    0x75050000 - 0x75058000 C:\WINNT\System32\WSOCK32.dll
    0x782C0000 - 0x782CC000 C:\WINNT\System32\rnr20.dll
    0x77980000 - 0x779A4000 C:\WINNT\System32\DNSAPI.DLL
    0x77340000 - 0x77353000 C:\WINNT\System32\iphlpapi.dll
    0x77520000 - 0x77525000 C:\WINNT\System32\ICMP.DLL
    0x77320000 - 0x77337000 C:\WINNT\System32\MPRAPI.DLL
    0x75150000 - 0x75160000 C:\WINNT\System32\SAMLIB.DLL
    0x75170000 - 0x751BF000 C:\WINNT\System32\NETAPI32.DLL
    0x77BE0000 - 0x77BEF000 C:\WINNT\System32\SECUR32.DLL
    0x751C0000 - 0x751C6000 C:\WINNT\System32\NETRAP.DLL
    0x77950000 - 0x7797A000 C:\WINNT\system32\WLDAP32.DLL
    0x77A50000 - 0x77B45000 C:\WINNT\system32\OLE32.DLL
    0x779B0000 - 0x77A4B000 C:\WINNT\system32\OLEAUT32.DLL
    0x773B0000 - 0x773DE000 C:\WINNT\System32\ACTIVEDS.DLL
    0x77380000 - 0x773A2000 C:\WINNT\System32\ADSLDPC.DLL
    0x77830000 - 0x7783E000 C:\WINNT\System32\RTUTILS.DLL
    0x77880000 - 0x7790D000 C:\WINNT\System32\SETUPAPI.DLL
    0x77C10000 - 0x77C6E000 C:\WINNT\System32\USERENV.DLL
    0x774E0000 - 0x77512000 C:\WINNT\System32\RASAPI32.DLL
    0x774C0000 - 0x774D1000 C:\WINNT\System32\RASMAN.DLL
    0x77530000 - 0x77552000 C:\WINNT\System32\TAPI32.DLL
    0x71730000 - 0x717BA000 C:\WINNT\system32\COMCTL32.DLL
    0x70BD0000 - 0x70C20000 C:\WINNT\system32\SHLWAPI.DLL
    0x77360000 - 0x77379000 C:\WINNT\System32\DHCPCSVC.DLL
    0x777E0000 - 0x777E8000 C:\WINNT\System32\winrnr.dll
    0x777F0000 - 0x777F5000 C:\WINNT\System32\rasadhlp.dll
    0x10000000 - 0x10055000
    C:\bea\wlserver6.1\bin\oci901_8\weblogicoci37.dll
    0x0DE20000 - 0x0DE3A000 C:\Oracle\Ora81\BIN\OCI.dll
    0x780A0000 - 0x780B2000 C:\WINNT\System32\MSVCIRT.dll
    0x60400000 - 0x60502000 C:\Oracle\Ora81\BIN\OraClient8.Dll
    0x60600000 - 0x60682000 C:\Oracle\Ora81\BIN\oracore8.dll
    0x60800000 - 0x60848000 C:\Oracle\Ora81\BIN\oranls8.dll
    0x0DE40000 - 0x0DE46000 C:\Oracle\Ora81\BIN\oravsn8.dll
    0x60200000 - 0x60264000 C:\Oracle\Ora81\BIN\oracommon8.dll
    0x60000000 - 0x6011F000 C:\Oracle\Ora81\BIN\orageneric8.dll
    0x60350000 - 0x60356000 C:\Oracle\Ora81\BIN\orawtc8.dll
    0x60A00000 - 0x60A2B000 C:\Oracle\Ora81\BIN\oranl8.dll
    0x60B00000 - 0x60BAA000 C:\Oracle\Ora81\BIN\oran8.dll
    0x60E00000 - 0x60E10000 C:\Oracle\Ora81\BIN\orancrypt8.dll
    0x61100000 - 0x61137000 C:\Oracle\Ora81\BIN\oranro8.dll
    0x0DE50000 - 0x0DEAE000 C:\Oracle\Ora81\BIN\orannzsbb8.dll
    0x61500000 - 0x6150E000 C:\Oracle\Ora81\BIN\oranldap8.dll
    0x61700000 - 0x6171C000 C:\Oracle\Ora81\BIN\oraldapclnt8.dll
    0x61900000 - 0x61906000 C:\Oracle\Ora81\BIN\oranhost8.dll
    0x62100000 - 0x62106000 C:\Oracle\Ora81\BIN\oranoname8.dll
    0x0DEB0000 - 0x0DEB6000 C:\Oracle\Ora81\BIN\orancds8.dll
    0x62300000 - 0x62306000 C:\Oracle\Ora81\BIN\orantns8.dll
    0x62500000 - 0x62508000 C:\Oracle\Ora81\BIN\orannds8.dll
    0x0DEC0000 - 0x0DEDC000 C:\Oracle\Ora81\BIN\orannms8.dll
    0x62700000 - 0x62741000 C:\Oracle\Ora81\BIN\ORATRACE8.dll
    0x62900000 - 0x62B1B000 C:\Oracle\Ora81\BIN\orapls8.dll
    0x63100000 - 0x63108000 C:\Oracle\Ora81\BIN\oraslax8.dll
    0x63200000 - 0x63272000 C:\Oracle\Ora81\BIN\orasql8.dll
    0x64700000 - 0x6470C000 C:\Oracle\Ora81\bin\orantcp8.dll
    0x64500000 - 0x6450D000 C:\Oracle\Ora81\bin\orannts8.dll
    0x75500000 - 0x75504000 C:\WINNT\System32\security.dll
    0x782D0000 - 0x782EE000 C:\WINNT\system32\msv1_0.dll
    0x11260000 - 0x11265000 C:\bea\wlserver6.1\bin\wlntio.dll
    0x77920000 - 0x77943000 C:\WINNT\system32\imagehlp.dll
    0x72A00000 - 0x72A2D000 C:\WINNT\system32\DBGHELP.dll
    0x690A0000 - 0x690AB000 C:\WINNT\System32\PSAPI.DLL
    Local Time = Thu Apr 03 17:31:00 2003
    Elapsed Time = 327
    # The exception above was detected in native code outside the VM
    # Java VM: Java HotSpot(TM) Client VM (1.3.1_01 interpreted mode)
    So now we have a situation where - we can crash either server with a
    call to a function. We can now run the spcursors.java example without
    problem. The procedure that does crash the WLS can be run successfully
    from within sqlplus (it involves multiple subqueries and outer joins).
    FYI - the cursors we are returning in the function are weak cursor
    types (TYPE ref_cursor IS REF CURSOR)
    Any other suggestions greatly welcomed.
    Tony
    Mitesh Patel <[email protected]> wrote in message
    news:<[email protected]>...
    Please do the following:
    Make sure you have login delay sec=1 for connection pool in config.xml
    Should have TestConnOnReserve=true
    and use 901 driver instead of 817 driver. Using suggested driver, stillyou can connect to
    your original database.
    Thanks,
    Mitesh
    Tony Ross wrote:
    Can anyone make a suggestion
    We are experiencing a problem that causes our Weblogic Server to crash
    when a JDBC call is made to our Oracle database.
    Host Details
    Operating System: Solaris Version 8
    SunOS 5.8 Generic_108528-15 sun4u sparc SUNW,UltraAX-i2
    WebLogic Server 6.1 SP1 09/18/2001 14:28:44 #138716
    Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production
    JDBC Driver Weblogic JDriver for Oracle
    The jdbc command that causes the problem is similar the spcursor
    example code file:
    // Here we prepare a CallableStatement using a WebLogic extension
    // to JDBC that supports binding an Oracle cursor to an output
    // parameter. Register the output parameter type as OTHER . . .
    cstmt =
    (weblogic.jdbc.common.OracleCallableStatement)conn.prepareCall("BEGIN
    OPEN ? FOR select * from emp; END;");
    cstmt.registerOutParameter(1, java.sql.Types.OTHER);
    The crash happens when the re.next() method is invoked after the
    execute()
    This is the core dump message that is generated:
    An unexpected exception has been detected in native code outside the
    VM.
    Unexpected Signal : 11 occurred at PC=0xd339f37c
    Function name=kpcxk2u
    Library=/u01/app/oracle/product/8.1.7/lib/libclntsh.so.8.0
    Current Java thread:
    at weblogic.db.oci.OciCursor.arrayFetch(Native Method)
    atweblogic.db.oci.OciCursor.oci_arrayFetch(OciCursor.java:2002)
    at weblogic.jdbc.oci.ResultSet.next(ResultSet.java:759)
    at weblogic.jdbc.pool.ResultSet.next(ResultSet.java:180)
    atweblogic.jdbc.rmi.internal.ResultSetImpl.next(ResultSetImpl.java:132)
    atweblogic.jdbc.rmi.internal.ResultSetImpl_WLSkel.invoke(Unknown
    Source)
    atweblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:296)
    atweblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:265)
    atweblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:
    atweblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
    Dynamic libraries:
    0x10000/opt/bea/jdk131/jre/bin/../bin/sparc/native_threads/java
    0xff350000 /usr/lib/libthread.so.1
    0xff390000 /usr/lib/libdl.so.1
    0xff200000 /usr/lib/libc.so.1
    0xff330000 /usr/platform/SUNW,UltraAX-i2/lib/libc_psr.so.1
    0xfe480000 /opt/bea/jdk131/jre/lib/sparc/hotspot/libjvm.so
    0xff2e0000 /usr/lib/libCrun.so.1
    0xff1e0000 /usr/lib/libsocket.so.1
    0xff100000 /usr/lib/libnsl.so.1
    0xff0d0000 /usr/lib/libm.so.1
    0xff310000 /usr/lib/libw.so.1
    0xff0b0000 /usr/lib/libmp.so.2
    0xff080000 /opt/bea/jdk131/jre/lib/sparc/native_threads/libhpi.so
    0xff050000 /opt/bea/jdk131/jre/lib/sparc/libverify.so
    0xfe440000 /opt/bea/jdk131/jre/lib/sparc/libjava.so
    0xff020000 /opt/bea/jdk131/jre/lib/sparc/libzip.so
    0xfe230000 /opt/bea/jdk131/jre/lib/sparc/libnet.so
    0xfe160000 /usr/lib/nss_files.so.1
    0xd3700000/opt/bea/wlserver6.1/lib/solaris/oci817_8/libweblogicoci37.so
    0xd3000000 /u01/app/oracle/product/8.1.7/lib/libclntsh.so.8.0
    0xfd090000 /usr/lib/libC.so.5
    0xfd3b0000 /u01/app/oracle/product/8.1.7/lib/libwtc8.so
    0xfd070000 /usr/lib/libgen.so.1
    0xfd050000 /usr/lib/libsched.so.1
    0xfd020000 /usr/lib/libaio.so.1
    0xfafd0000 /opt/bea/wlserver6.1/lib/solaris/libmuxer.so
    Local Time = Thu Apr 3 10:39:37 2003
    Elapsed Time = 178
    # The exception above was detected in native code outside the VM
    # Java VM: Java HotSpot(TM) Client VM (1.3.1-b24 mixed mode)
    # An error report file has been saved as hs_err_pid7599.log.
    # Please refer to the file for further information.
    Abort - core dumped
    TIA
    Tony

  • Getting error while Calling Oracle Stored Procedure with output Parameter

    HI All,
    From long days i am working on this but i unable to solve it.
    Even i have studied so many forums in SAP but i didn't find the solution.
    I am calling Oracle Store procedure with 3 inputs and 1 output without cursor.
    Store Procedure:-
    CREATE OR REPLACE PROCEDURE PDS.send_rm
    IS
    proc_name           VARCHAR2(64) := 'send_rm';
    destination_system  VARCHAR2(32) := 'RAWMAT';
    xml_message         VARCHAR2(4000);
    status_code         INTEGER;
    status_message      VARCHAR2(128);
    debug_message       VARCHAR2(128);
    p_ret               INTEGER;
    BEGIN
      DBMS_OUTPUT.PUT_LINE( proc_name || ' started' );
      xml_message := '<RAW_MATERIAL>'||
                     '<BAR_CODE>10000764601</BAR_CODE>'||
                     '<MATERIAL>1101448</MATERIAL>'||
                     '<VENDOR_CODE/>'||
                     '<PRODUCTION_DATE>0000-00-00</PRODUCTION_DATE>'||
                     '<EXPIRE_DATE>0000-00-00</EXPIRE_DATE>'||
                     '<BATCH/>'||
                     '<PO_NUM/>'||
                     '<MATERIAL_DESCRIPTION>POWER SUPPLY</MATERIAL_DESCRIPTION>'||
                     '<SPEC_NAME/>'||
                     '<STOCK_CODE>BSW-JH</STOCK_CODE>'||
                     '<INSPECTION_LOT>00</INSPECTION_LOT>'||
                     '<USAGE_DECISION_CODE/>'||
                     '<MATERIAL_GROUP>031</MATERIAL_GROUP>'||
                     '</RAW_MATERIAL>';
          dbms_output.put_line('XML '||xml_message);
    --      vp_interface.load_rawmat@cnprpt1_pds(SYSDATE, destination_system,
    --                   xml_message, p_ret);
          vp_interface.load_rawmat(SYSDATE, destination_system,
                       xml_message, p_ret);
          dbms_output.put_line('Return Code '||p_ret);
          COMMIT;
    EXCEPTION
      WHEN OTHERS THEN
        status_code := SQLCODE;
        status_message := SUBSTR(SQLERRM, 1, 64);
    --    Extract_Error_Logger(proc_name, 'LOCAL', SYSDATE, -999,
    --                         status_message, 0, debug_message);
        ROLLBACK;
    END send_rm;
    And while i am calling this Store procedure in MII, I am facing error.
    I have tried different ways but didnt solved
    In SQL Query, i kept mode as: FixedQueryOutput
    Can anyone tell me or send code for calling above store procedure
    And onemore thing, While creating store procedure in Oracle for MII. Do we need to Create output parameter as cursor or normal.  
    Thanks,
    Kind Regards,
    Praveen Reddy M

    Hi Praveen
    Our wrapper was created because we could not modify the procedure we call (it was not returning a cursor).
    CREATE OR REPLACE PROCEDURE CHECK_PUT_IN_USE
    (STRCMPNAME in varchar2,
    STRSCANLABEL in varchar2,
    RCT1 out SYS_REFCURSOR
    AS
      charDispo          Char(1);
      charStatus          Char(1);
      intCatNo          Integer;
      charCatDispo     Char(1);
      strCatQual          VarChar2(2);
      strCatDesc          VarChar2(30);
      strMsg          VarChar2(128);
    BEGIN
    qa.check_put_in_use@AR(STRCMPNAME,
                                              STRSCANLABEL,
                                              charDispo,
                                              charStatus,
                                              intCatNo,
                                              charCatDispo,
                                              strCatQual,
                                              strCatDesc,
                                              strMsg);
    OPEN RCT1
    FOR Select charDispo,charStatus,charDispo,charStatus,intCatNo,charCatDispo,strCatQual,strCatDesc,strMsg from Dual;
    END;
    Hope this helps
    Regards
    Amrik
    then with a FixedQueryWithOutput
    call mixar.qasap.wrapper_update_put_in_use('[Param.1]','[Param.2]',[Param.3],?)
    Hope this helps.

  • ResultSet of a cursor as an out parameter

    How can you return a cursor or a resultSet as an OUT parameter? - Any info will be greatly appreciated. A code ex will be great
    vj

    Assuming you mean as an output parameter of pl/sql procedure being called from pl/sql...
    declare
      type refcur_type is ref cursor;
      type tab_user_tables_type is table of user_tables%rowtype index by binary_integer;
      refcur_user_tables refcur_type;
      tab_user_tables tab_user_tables_type;
      row_user_tables user_tables%rowtype;
      procedure get (
        out_refcur_user_tables out refcur_type,
        out_tab_user_tables out tab_user_tables_type) is
      begin
        for row_user_tables in (select * from user_tables) loop
          out_tab_user_tables(nvl(out_tab_user_tables.count, 0) + 1) := row_user_tables;
        end loop;
        open out_refcur_user_tables for select * from user_tables;
      end get;
    begin
      get(refcur_user_tables, tab_user_tables);
      dbms_output.put_line('from table ...');
      for i in 1 .. tab_user_tables.count loop
        dbms_output.put_line(tab_user_tables(i).table_name);
      end loop;
      dbms_output.put_line('from reference cursor ...');
      loop
        fetch refcur_user_tables into row_user_tables;
        exit when refcur_user_tables%notfound;
        dbms_output.put_line(row_user_tables.table_name);
      end loop;
    end;

  • Re : When to Use tables instead of Cursors in Stores Procedures

    Hello All,
    Hope all is well. I know this is very broad questions and requires more specifics. All, I am trying to understand from very high level is to what are some of the instances when one would prefer to have physical/temp tables instead of using cursors in SP. Generic Pointers would really be helpful.
    Thanks in advance,
    Sam

    You are comparing apples and oranges here.
    A cursor is a work area where oracle stores the procession information when it executes a multi-row query.
    Lets say you have a sql query like this
    select * from empWhen such a query is executed oracle allocates a work area where the processing information of the query is stored. This
    is called a cursor. You can explicitly define a cursor like this.
    cursor c_emp
    is
    select * from empIn this case you are giving a name to the work area allocated by oracle. Now you can use this name c_emp to access the
    result set sequentially.
    On the other hand a Table is an oracle Object. It is a logical representation of your physical data.
    Data in a table can be manipulated meaning, you can insert, update or delete it. Data in a table is persistent.
    So i don't think a comparison between this two is appropriate.
    Thanks,
    Karthick.

  • Looking for some help with using Oracle stored procedures in vb2010

    First off thank you to whoever lends me a hand with my problem. A little background first I am in a software development class and we are currently building our program using VB (I have no experience in this), and Oracle(currently in a Oracle class so I know how to use Oracle itself just not with VB).
    I am using vb2010 express edition if that helps. Currently I have a stored procedure that takes a 4char "ID" that returns a position (ie, salesperson,manager ect). I want to use the position returned to determine what vb form is displayed (this is acting as a login as you dont want a salesperson accessing the accountants page for payroll ect).
    Here is the code I have currently on the login page of my VB form
    Imports Oracle.DataAccess.Client
    Imports Oracle.DataAccess.Types
    Public Class Login
    Dim conn As New OracleConnection
    Private Sub empID_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles empID.Click
    End Sub
    Private Sub LoginBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LoginBtn.Click
    conn.ConnectionString = "User ID = Auto" & _
    ";Password = ********" & _
    ";Data Source = XE"
    conn.Open()
    Dim sq1 As String = "Return_Position" 'name of procedure
    Dim cmd As New OracleCommand(sq1, conn)
    cmd.CommandType = CommandType.StoredProcedure
    cmd.Parameters.Add(New OracleParameter("I_EmpID", OracleDbType.Char, 4)).Value = Emp_ID.Text
    Dim dataReader As OracleDataReader = cmd.ExecuteReader
    dataReader.Read()
    Dim position As New ListBox
    position.Items.Add(dataReader.GetString(0)) 'were I am getting an error, I also tried using the dataReader.getstring(0) to store its value in a string but its a no go
    If position.FindStringExact("MANAGER") = "MANAGER" Then
    Me.Hide()
    Dim CallMenu As New Menu()
    CallMenu.ShowDialog()
    End If
    LoginBtn.Enabled = False
    End Sub
    I have read the oracle.net developer guide for using oracle in vb2010 and have successfully gotten through the document however they never use a stored procedure, since the teacher wants this program to user a layered architecture I cannot directly store sql queries like the document does, thus the reason I want to use stored procedures.
    This is getting frustrating getting stuck with this having no background in VB, I could easily do this in c++ using file i/o even through it would be a pain in the rear....

    Hello,
    I am calling Oracle 11g stored procedures from VB.Net 2010. Here is a code sample (based on your code) you should be able to successfully implement in your application.
    Please note that you may have to modify your stored procedure to include an OUT parameter (the employee position) if it doesn't have it yet.
    Private Sub LoginBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LoginBtn.Click
    Dim sProcedureName As String = "Return_Position" 'name of stored procedure
    Dim ORConn as OracleConnection, sConn as String
    Dim sPosition as String, sDataSource as String, sSchema as String, sPWD as String
    Dim cmd As OracleCommand
    'please provide below sDataSource, sSchema and sPWD in order to connect to your Oracle DB
    sConn = "Data Source=" & sDataSource & ";User Id=" & sSchema & ";Password=" & sPWD & ";"
    ORConn = New OracleConnection(sConn)
    ORConn.Open()
    cmd = New OracleCommand(sProcedureName, ORConn)
    With cmd
    .CommandType = Data.CommandType.StoredProcedure
    'input parameter in your stored procedure is EmpId
    .Parameters.Add("EmpID", OracleDbType.Varchar2).Value = Emp_ID.Text
    .Parameters.Item("EmpID").Direction = ParameterDirection.Input
    'output parameter in your stored procedure is Emp_Position
    .Parameters.Add("Emp_Position", OracleDbType.Varchar2).Direction = ParameterDirection.Output
    .Parameters.Item("Emp_Position").Size = 50 'max number of characters for employee position
    Try
    .ExecuteNonQuery()
    Catch ex As Exception
    MsgBox(ex.Message)
    Exit sub
    End Try
    End With
    sPosition = cmd.Parameters.Item("Emp_Position").Value.ToString
    'close Oracle command
    If Not Cmd Is Nothing Then Cmd.Dispose()
    Cmd = Nothing
    'close Oracle connection
    If Not ORConn Is Nothing Then
    If not ORConn.State = 0 Then
    ORConn.Close()
    End If
    ORConn.Dispose()
    End If
    ORConn = Nothing
    If UCase(sPosition) = "MANAGER" Then
    Me.Hide()
    Dim CallMenu As New Menu()
    CallMenu.ShowDialog()
    End If
    LoginBtn.Enabled = False
    End Sub
    If you need further assistance with the code, please let me know.
    Regards,
    M. R.

  • Execute store procedure( in Id, in out RefCursor), and data fetched in ref cursor should be sent out as excel sheet.

    I am trying to make a ssis package that get the data calling the store proc with two param one is ID and other is Sys_refcursor. Say Store Proc as ListName(Id int, myCur sys_refcursor), which gets the datas with the conditions inside it.
    REATE OR REPLACE PROCEDURE schemaName.LISTNAME (P_ID  IN INT, LST_NAME_REFCUR   IN OUT SYS_REFCURSOR)
    IS
    P_NAMESOURCE_ID INT;
    BEGIN
        SELECT SOURCE_ID INTO P_NAMESOURCE_ID FROM SEARCHING_TABLE ST WHERE ST.ID = P_ID;           
                   IF (P_NAMESOURCE_ID=1)
                   THEN
                      OPEN LST_SOURCE_REFCUR FOR 
                            SELECT ST.ID,
                                   ST.TRANSACTION_DATE AS TRAN_DATE,
              IF (P_NAMESOURCE_ID=1)
                   THEN 
                      OPEN LST_SOURCE_REFCUR FOR             ....     
    then i need to get the data from that refcursor and fetch those data to excel sheet to a virtual directory.
    Any help would be appreciated. I am new to SSIS. and i need to do this assignment this friday. 

    Hi 11srk,
    To fetch data from Oracle store procedure, you can use a Script Component as source to call the Oracle stored procedure by using System.Data.OracleClient OracleDataReader, and get the rows and add them to the pipeline buffer. For more information, please
    see:
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/1d0b3a1b-8792-469c-b0d1-f2fbb9e9ff20/dump-oracle-ref-cursor-into-ms-sql-staging-table-using-ssis
    http://social.msdn.microsoft.com/Forums/sqlserver/en-US/fcdaa97e-8415-4c3e-8ffd-1ad45b590d57/executing-an-oracle-stored-procedure-from-ssis?forum=sqlintegrationservices
    http://msdn.microsoft.com/en-us/library/system.data.oracleclient.oracledatareader(VS.90).aspx  
    Regards,
    Mike Yin
    TechNet Community Support

Maybe you are looking for

  • How can i reduce CPU usage while playing video?

    Hi, I have recently finished and then published a  project to my desktop which is a video jukebox application. The  application plays music videos in a large popup window upon a button  click. The problem i have is that when the video is not playing

  • How to know the changes done in one function module??

    Hi All, Could you please let me know how can I know the changes done in one function module? I am not a technical expert..I can just jump into SE37 to access the function module.. but would like to know if there are any logs for the function module s

  • Java.lang.LinkageError:loader constraints

    Hi,           I am having problem with on of my ejb having some           classes sharing with my servlet. The following is the           exception which I get. I guess this is due to different           classloader trying to load the sharing class.

  • Warning: Your Nano plays .mp3s, NOT MP3s!

    What may be semantics to you and I may be a software glitch on the part of Micr, I mean, Apple. I had been having a problem with a new Nano; it would play some songs just fine, but would restart when trying to play others. So of course I did the 5Rs,

  • Cc [feb build] hogs memory

    cc: Sun C 5.9 Linux_i386 Build40_1 2007/02/09 My machine has 1GB ram, and 2GB swap. One one source file - it goes berserk allocating all the available memory [in this example 1.6Gb - before its killed] Mem: 1032340k total, 1019564k used, 12776k free,