Oracle Table Type as IN parameter

Hi All,
I am trying to pass an Object from java (which has a List of objects ) as an input to my Oracle Stored Proc.
My java obj would look like:
Class TestObj -- has attribute -> List <Employee> empList
Here the class Employee has some attributes like name, address etc.
Now in Oracle, I have defined the following types:
create or replace type EMP_OBJECT as object
NAME VARCHAR2(10)
, Address VARCHAR2(20)
create or replace type EMP_OBJECT_TABLE as table of EMP_OBJECT ;
create or replace type EMP_OBJECT_PARENT as object
EMP_OBJECT_TABLE_TB EMP_OBJECT_TABLE
create or replace type EMP_OBJECT_PARENT_TABLE as table of EMP_OBJECT_PARENT ;
Now my input param to the stored proc would be the EMP_OBJECT_PARENT_TABLE , something like:
create or replace procedure proc_test
emptab IN EMP_OBJECT_PARENT_TABLE
as
begin
end;
Am i going the correct way? How do I finally access an individual employee's data from my Input parameter?
Thank you.

Re: Passing structure to stored procedure

Similar Messages

  • How to use Oracle Table Type values in Select Statement.

    Hi,
    I am fetching initial set of values into Oracle Table of Records Type and want to use list of values in the Select statement.
    For example, try something like the following:
    TYPE t_record IS RECORD (
    ID TABLEA.ID%type,
    NO TABLEA.NO%type,
    v_record t_record;
    TYPE t_table IS TABLE OF v_record%TYPE;
    v_table t_table;
    -- Code to populate the values in v_table here.
    SELEC ID,NO, BULK COLLECT INTO <some other table variabes here> FROM TABLEA
    WHERE ID IN v_table(i).ID;
    I want to know how to use the values from Oracle Table Type in the Select Statement.

    Something like this:
    create or replace type t_record as  object (
    id number,
    no number
    CREATE or replace type t_table AS TABLE OF t_record;
    set serveroutput on
    declare
      v_table t_table := t_table();
      v_t1 t_table := t_table();
    begin
      v_table.extend(1);
      v_table(1).ID := 1;
      v_table(1).No := 10;
      v_table.extend(1);
      v_table(2).ID := 2;
      v_table(2).ID := 20;
      SELEC t_record (ID,NO) BULK COLLECT INTO v_t1
      from TableA
      FROM TABLEA
      WHERE ID IN (select t.ID from table(v_Table) t);
      for i in 1..v_t1.count loop
        dbms_output.put_line(v_t1(i).ID);
        dbms_output.put_line(v_t1(i).No);
      end loop;
    end;
    /Untested!
    P;
    Edited by: bluefrog on Mar 5, 2010 5:08 PM

  • Calling Stored Procedure with table type as In parameter from Java

    Hi Everyone,
    Can anyone help me with the sample code to call a stored procedure having input parameter of Table type (consisting of multiple fields) from Java. This job is currently being done by a BPEL process.
    We want to implement the same using Java.
    Any sample code will be really helpful.
    Thanks & Regards,
    Vikas

    To start using a blob you have to insert it into the database and then get it back. Sounds weird but that is how it is. Here is a very simple program to do this:
    #include<occi.h>
    #include <iostream>
    using namespace oracle::occi;
    using namespace std;
    int main()
      try
        Environment *env = Environment::createEnvironment(Environment::OBJECT);
        Connection *conn = env->createConnection("hr","hr","");
        string stmt1 = "insert into blob_tab values (:1) ";
        string stmt2 = "select col1 from blob_tab";
        Blob blob(conn);
        blob.setEmpty(conn);
        Statement *stmtObj = conn->createStatement(stmt1);
        stmtObj->setBlob(1,blob);
        stmtObj->executeUpdate();
        conn->commit();
        Blob blob1(conn);
        Statement *stmtObj2 = conn->createStatement(stmt2);
        ResultSet *rs = stmtObj2->executeQuery();
        while(rs->next())
         blob1 = rs->getBlob(1);
        string stmt3 = "begin my_proc(:1) ;end;";
        Statement *stmtObj3 =  conn->createStatement(stmt3);
        stmtObj3->setBlob(1,blob1);
        stmtObj3->executeUpdate();
      catch (SQLException e)
        cout << e.getMessage();
      /* The tables and procedure are primitive but ok for demo
        create table blob_tab(col1 blob);
        create or replace procedure my_proc(arg in blob)
        as
        begin
         -- just a putline here. you can do other more meaningful operations with the blob here
          dbms_output.put_line('hello');
       end;
    }Hope this helps.
    Thanks,
    Sumit

  • Passing PL/SQL table type as IN Parameter to DB Adapter

    Hi,
    I have an requirement to pass multiple record values(array of values) to an API from BPEL process.
    For this,
    1) I have created a package procedure having PL/SQL table type variable as IN Parameter.
    2) In the BPEL process, created a DB adpater pointing to the above API.(Created wrapper API impicitly)
    When I intiated the BPEL process passing multiple values, the API is taking only the first value, ignoring rest of the values.
    Any reason, why only the first value is accepted by the API ?
    Thanks,
    Rapp.

    If I understand correctly, JPublisher generates a wrapper API for an underlying API that takes a PL/SQL table as an IN parameter. The wrapper will generate and use a SQL nested table as the type for the IN parameter of the wrapper procedure.
    The DB adapter DOES support nested tables, varrays, and objects as IN parameters of an API. The problem you are seeing is most likely due to the way you are modeling your BPEL process, specifically with respect to your Assign activities.
    When you Assign TO an IN parameter, make sure that you drill down all the way and choose the parameter name in the InputParameters root element. Similarly, when you Assign FROM the API value, you must drill down and choose the name of the OUT parameter in the OutputParameters root element.
    In a Transform activity, you would use the FOR construct on the target side to get the values of the nested table or varray from the source side.

  • Table type in import parameter in rfc function module

    Hi we don't have the table type in our system which exist in the other system which is the import parameter of the rfc function module.so how can we pass the parameter. shell we create the same table type in our system also.it is a table type for a deep structure.

    Hello,
    I donot have access to CRM box I cannot view the FM. You can verify with the CRM counterpart what exactly is the TYPE for param DATA.
    Else you can define a generic internal table (TYPE TABLE) & try calling the FM.
    BR,
    Suhas

  • Table type as a parameter

    Hi Experts,
    I got a function with following importing parameter:
    REFERENCE(IM_RECIPIENTS) TYPE  ISU_ADR6_TAB OPTIONAL
    I created a table 'zdyu_mail' with the structure wich the same as ISU_ADR6_TAB
    And I tried to transfer this parameter as following:
    DATA: ta_dyu_mail      TYPE STANDARD TABLE OF zdyu_mail,
           wa_dyu_mail      LIKE LINE OF ta_dyu_mail.
    TYPES: ty_dyu_mail TYPE STANDARD TABLE OF zdyu_mail.
    DATA: v_recipients     TYPE ty_dyu_mail.
    IM_RECIPIENTS        = v_recipients
    Where am I worng?

    Your function module parameter is of type ISU_ADR6_TAB and your parameter is of type  STANDARD TABLE OF zdyu_mail, these are two different types. That's why it is wrong. Follow Glen's advise and it will work.

  • Oracle Object Table Type

    I have an application that I would like to map bc4j to a object type hierarchy in the database. From reading previous otn threads I'm under the impression that Domains are not used for Oracle Table Types, just for columns based on oracle types. The thread later goes on to say that for the base type (person_typ) I would map a entity object to the table(person_table) mapped to the base type. To map all the sub-types I would create new entity objects and have PersonEO subclassed into StudentEO and EmployeeEO.
    I have done this and it's unclear to me when I subclass PersonEO as StudentEO how do I declare that StudentEO is of oracle object type student_typ?
    I'm also having problems with inserting data into the base entity obect. Here's code:
    PersonVOImpl personVo = am.getPersonVO();
    PersonVORowImpl row = (PersonVORowImpl)personVo.createRow();
    personVo.insertRow(row);
    row.setName("Mark");
    row.setPhone("911");
    am.getTransaction().commit();
    personVo.executeQuery();
    while (personVo.hasNext()){
    PersonVORowImpl personRow = (PersonVORowImpl)personVo.next();
    The data gets comitted to the db correctly but when the code hits personVo.executeQuery() I get the following error:
    oracle.jbo.domain.DataCreationException: JBO-25009: Cannot create an object of type:oracle.sql.STRUCT with value:Mark
         at oracle.jbo.domain.TypeFactory.get(TypeFactory.java:687)
         at oracle.jbo.domain.TypeFactory.getInstance(TypeFactory.java:80)
         at oracle.jbo.server.OracleSQLBuilderImpl.doLoadBulkFromResultSet(OracleSQLBuilderImpl.java:1113)
         at oracle.jbo.server.ViewRowImpl.populate(ViewRowImpl.java:2017)
         at oracle.jbo.server.ViewDefImpl.createInstanceFromResultSet(ViewDefImpl.java:1013)
         at oracle.jbo.server.ViewObjectImpl.createRowFromResultSet(ViewObjectImpl.java:2309)
         at oracle.jbo.server.ViewObjectImpl.createInstanceFromResultSet(ViewObjectImpl.java:2240)
         at oracle.jbo.server.QueryCollection.populateRow(QueryCollection.java:1698)
         at oracle.jbo.server.QueryCollection.fetch(QueryCollection.java:1552)
         at oracle.jbo.server.QueryCollection.get(QueryCollection.java:1008)
         at oracle.jbo.server.ViewRowSetImpl.getRow(ViewRowSetImpl.java:2791)
         at oracle.jbo.server.ViewRowSetIteratorImpl.doFetch(ViewRowSetIteratorImpl.java:2504)
         at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2368)
         at oracle.jbo.server.ViewRowSetIteratorImpl.refresh(ViewRowSetIteratorImpl.java:2569)
         at oracle.jbo.server.ViewRowSetImpl.notifyRefresh(ViewRowSetImpl.java:1641)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:577)
         at oracle.jbo.server.ViewRowSetImpl.executeQueryForMasters(ViewRowSetImpl.java:611)
         at oracle.jbo.server.ViewRowSetImpl.executeQuery(ViewRowSetImpl.java:593)
         at oracle.jbo.server.ViewObjectImpl.executeQuery(ViewObjectImpl.java:2886)
         at model.testing.main(testing.java:33)
    Am I coding this correctly? I'm using jdev9032 for this. Are there any examples out there on how to correctly use bc4j with oracle object type tables?
    Thanks in advance!
    -Mark

    Here is my ddl:
    CREATE TYPE Person_typ AS OBJECT
    ( name VARCHAR2(30),
    address VARCHAR2(100)) NOT FINAL
    CREATE TABLE PERSON_TABLE OF PERSON_TYP
    I map a entity object to person_table one for one and I edit the SYS_NC_OID$ property of updateable to never.
    I then map a view object one for one to the entity object. The jbo trace I get when -Djbo.debugoutput=console is declared is the following (omitted everything before the db connected).[156] Successfully logged in
    [157] JDBCDriverVersion: 9.0.1.4.0
    [158] DatabaseProductName: Oracle
    [159] DatabaseProductVersion: Personal Oracle9i Release 9.2.0.1.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.1.0 - Production
    [160] ViewRowSetImpl's jbo.viewlink.consistent = false (0)
    [161] Column count: 3
    [162] Executing SQL in generateRefAndOID...
    [163] select a.oid, make_ref(PERSON_TABLE, a.oid) from (select /*+ NO_MERGE +*/ sys_op_guid() as oid from dual) a
    [164] OracleSQLBuilder Executing DML on: PERSON_TABLE (Insert)
    [165] INSERT INTO PERSON_TABLE(NAME,ADDRESS) VALUES (:1,:2)
    [166] BaseSQLBuilder: releaseSavepoint 'BO_SP' ignored
    [167] PersonVO notify COMMIT ...
    [168] Column count: 3
    [169] ViewObject : Created new QUERY statement
    [170] SELECT REF(PersonTable), PersonTable.NAME, PersonTable.ADDRESS FROM PERSON_TABLE PersonTable
    [171] LoadBulkFromResultSet failed (2)
    oracle.jbo.domain.DataCreationException: JBO-25009: Cannot create an object of type:oracle.sql.STRUCT with value:Mark
         java.lang.Object oracle.jbo.domain.TypeFactory.get(java.lang.Class, java.lang.Class, java.lang.Object)
              TypeFactory.java:687
         java.lang.Object oracle.jbo.domain.TypeFactory.getInstance(java.lang.Class, java.lang.Object)
              TypeFactory.java:80
         java.lang.Object[] oracle.jbo.server.OracleSQLBuilderImpl.doLoadBulkFromResultSet(oracle.jbo.server.AttributeDefImpl[], int, java.sql.ResultSet, int, oracle.jbo.server.DBTransactionImpl)
              OracleSQLBuilderImpl.java:1059
         void oracle.jbo.server.ViewRowImpl.populate(java.sql.ResultSet)
              ViewRowImpl.java:1964
         oracle.jbo.server.ViewRowImpl oracle.jbo.server.ViewDefImpl.createInstanceFromResultSet(oracle.jbo.server.ViewObjectImpl, oracle.jbo.server.QueryCollection, java.sql.ResultSet)
              ViewDefImpl.java:1019
         oracle.jbo.server.ViewRowImpl oracle.jbo.server.ViewObjectImpl.createRowFromResultSet(java.lang.Object, java.sql.ResultSet)
              ViewObjectImpl.java:2035
         oracle.jbo.server.ViewRowImpl oracle.jbo.server.ViewObjectImpl.createInstanceFromResultSet(oracle.jbo.server.QueryCollection, java.sql.ResultSet)
              ViewObjectImpl.java:1966
         oracle.jbo.server.ViewRowImpl oracle.jbo.server.QueryCollection.populateRow()
              QueryCollection.java:1395
         boolean oracle.jbo.server.QueryCollection.fetch(int)
              QueryCollection.java:1237
         java.lang.Object oracle.jbo.server.QueryCollection.get(int)
              QueryCollection.java:832
         oracle.jbo.Row oracle.jbo.server.ViewRowSetImpl.getRow(int)
              ViewRowSetImpl.java:2621
         void oracle.jbo.server.ViewRowSetIteratorImpl.doFetch(int)
              ViewRowSetIteratorImpl.java:2347
         void oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed()
              ViewRowSetIteratorImpl.java:2211
         void oracle.jbo.server.ViewRowSetIteratorImpl.refresh(boolean, boolean)
              ViewRowSetIteratorImpl.java:2412
         void oracle.jbo.server.ViewRowSetImpl.notifyRefresh(boolean, boolean)
              ViewRowSetImpl.java:1556
         void oracle.jbo.server.ViewRowSetImpl.execute(boolean, boolean)
              ViewRowSetImpl.java:548
         void oracle.jbo.server.ViewRowSetImpl.executeQuery()
              ViewRowSetImpl.java:564
         void oracle.jbo.server.ViewObjectImpl.executeQuery()
              ViewObjectImpl.java:2616
         void mypackage1.testing.main(java.lang.String[])
              testing.java:25
    Exception in thread main
    Process exited with exit code 1.
    Please let me know if you need more information.
    -Mark

  • Concurrency and Oracle Object Types

    Hi All,
    I have a question regarding Concurrent usage of an Object type in Oracle.
    I have a java program which calls an Oracle stored proc with the object's table type as IN parameter. In my stored proc, I am populating an Oracle Object with data received from java and retrieving some data based on that.
    My java program can be invoked concurrently by 500 users at the same time - the application is built to handle that request load.
    Now in Oracle, if a bunch of requests are received at the same, would Oracle create multiple instances of this object type that would be usage to the multiple stored proc invocations? Or would there be a prob of concurrency?
    If multiple instance creation is not supported, is there some alternative I can use?
    My code roughly resembles:
    Object:
    contains two columns - name, age
    Stored proc - logic to retrieve and return data from a table based on the name, age received.
    When a bunch of requests access the stored proc simultaneously, will a bunch of instnaces of the object type get created? Or would there be a scenario where the object is common to all requests and hence data from one request would be conflicted due to data from another request?

    Hi Wiiliam
    Sorry for the late acknowledgement (i dozed off!).. Thanks for the response. So the private instance specific to a session ensure that theres no conflict between multiple requests to the same stored proc and hence no conflict of data... Great
    Chaitanya

  • Troubleshooting Oracle array type names in JDBC calls

    Hi,
    There are several threads in this forum about people having trouble with the array SQL type names that the Oracle JDBC driver recognizes (e.g., in a call setting up PLSQL procedure OUT parameters like "call.registerOutParameter(1, Types.ARRAY, "VARCHAR_NESTED_TAB_TYP");"). I've seen at least the following threads:
    * vinay saini's "accessing package defined datatypes in oracle from JDBC" thread (Re: Heterogeneous Connectivity to SQL Server from 8.0.5
    * fwelland's "PL/SQL Tables as IN parameters???" thread (Re: entity relationship/model of database diagram
    * Ernesto Marquina's "Table Type as OUT parameter" thread (Re: Changing namespace
    * Nazneen Nahid's "Oracle PL/SQL type defined within a package can't be passed from JAVA" thread (Re: BI Beans Graph in JSp
    * vinay saini's "mapping Table/VARRAY data type to JDBC data type" thread (Re: 9.0.3 unable to find session bean for AM
    I'm stuck in the middle of this myself, and found that something useful to look at is the PLSQL procedure that the driver uses to determine whether the type is there. You can run the following test PLSQL block with your schema name and type name to check on the database side whether it will work:
    declare
    schemaname varchar(255);
    typename varchar(255);
    typoid raw(255);
    version integer;
    tds long raw;
    lds long raw;
    begin
    schemaname := 'MKT2_SMD9';
    typename := 'VARCHAR_NESTED_TAB_TYP';
    dbms_output.put_line('Result for '||schemaname||','||typename||'='||
    dbms_pickler.get_type_shape(schemaname, typename, typoid, version, tds, lds));
    end;
    If the procedure returns 0, then the JDBC code should have no trouble picking up the array type and handling your call. If the procedure returns a nonzero number, the JDBC code using the same schemaname and typename will probably fail. This at least allows you to try a number of different schema and type names with the application and driver layers eliminated. Unfortunately, I have no idea how get_type_shape works, and it doesn't seem to be documented in Oracle's 9i docs, so I can't shed any light on why some things work and others don't.
    Jim

    I guess, in hibernate, in order to make it serialized object, try using set/collection implementation.

  • Accessing  table type from JAVA

    Hi Experts,
    We are making a custom copy of the std FM COM_BPUS_ORG_CONTPERS_REGISTER .
    It is observed that Tables are obsolete and we should not use them in custom function modules.
    I can pass a table type in import parameter and export parameter.
    Can we access a table type from java layer.
    Also, note that this STANDARD function module has parameter IT_BUSINESSPARTNERROLE_ORG which has table type BU_ROLE_T.
    Is it possible to access this?
    Note:- This Function module is not getting called in standard web shops.
    Please let me now how i can access this table type for hava while calling FM so as to input or retrieve valus from it.
    Regards
    Antony

    The issue with you is more than accessing a table type.
    You said:
    This Function module is not getting called in standard web shops.
    For function modules that are not called as a part of the standard flow, you have to develop your own simple BOM, BO, BEI, BE classes and methods to call the custom RFC - the whole nine yards. See the extension guide and see the Extension Demos 2 and 3 for reference.
    See the sample JCO calls from Java to understand how to access the table types.

  • How to execute a procedure if out parameter is table type

    Hi,
    I need to execute a procedure, output parameter of the procedure is table type.
    Oracle version I am using is 9.2.0.8 . I am using SQL*Plus
    Procedure declaration
    PROCEDURE current_open_cycle (p_ban IN repl_cust2.billing_account.ban%TYPE,
    v_bill_seq_rec OUT bill_seq_table) ;
    Table type declaration
    TYPE bill_seq_table IS
    TABLE OF bill_seq_rectype INDEX BY BINARY_INTEGER ;
    TYPE bill_seq_rectype IS RECORD (v_cycle_run_year repl_cust2.bill.cycle_run_year%TYPE,
    v_cycle_run_month repl_cust2.bill.cycle_run_month%TYPE,
    v_cycle_code repl_cust2.bill.cycle_code%TYPE,
    v_open_cycle BOOLEAN, -- An open cycle
    v_billed_cycle BOOLEAN, --
    v_invoice_number VARCHAR2(13),
    v_start_date DATE,
    v_end_date DATE,
    v_root_ban repl_cust2.bill.root_ban%TYPE) ;
    I tried executing using this script, but it failed. When I execute this oracle lost connection to data base.
    declare
    r_bill_seq_rec ss_invoice_utilities.bill_seq_table;
    begin
    ss_invoice_utilities.current_open_cycle(934018003,r_bill_seq_rec);
    end;
    Please help me how I should write declare block to execute this procedure and also print output of the procedure.
    Regards
    Raghu

    I don't see anything wrong with the anonymous block, assuming ss_invoice_utilities is the correct package name. Perhaps a simplified test case would show up what's not working there.
    As for printing the contents of an associative array, you'll have to write some code to loop through it and construct a string per row to output via dbms_output, assuming the text will fit within dbms_output's size restrictions in 9i. dbms_output is a debugging tool though - is that the requirement?
    btw "pls_integer" is less to type than "binary_integer" ;)
    Edited by: William Robertson on Apr 16, 2009 8:35 AM

  • Java call stored procedure with nested table type parameter?

    Hi experts!
    I need to call stored procedure that contains nested table type parameter, but I don't know how to handle it.
    The following is my pl/sql code:
    create or replace package test_package as
    type row_abc is record(
    col1 varchar2(16),
    col2 varchar2(16),
    col3 varchar2(16 )
    type matrix_abc is table of row_abc index by binary_integer;
    PROCEDURE test_matrix(p_arg1 IN VARCHAR2,
    p_arg2 IN VARCHAR2,
    p_arg3 IN VARCHAR2,
    p_out OUT matrix_abc
    END test_package;
    create or replace package body test_package as
    PROCEDURE test_matrix(p_arg1 IN VARCHAR2,
    p_arg2 IN VARCHAR2,
    p_arg3 IN VARCHAR2,
    p_out OUT matrix_abc
    IS
    v_sn NUMBER(8):=0 ;
    BEGIN
    LOOP
    EXIT WHEN v_sn>5 ;
    v_sn := v_sn + 1;
    p_out(v_sn).col1 := 'col1_'||to_char(v_sn)|| p_arg1 ;
    p_out(v_sn).col2 := 'col2_'||to_char(v_sn)||p_arg2 ;
    p_out(v_sn).col3 := 'col3_'||to_char(v_sn)||p_arg3 ;
    END LOOP ;
    END ;
    END test_package ;
    My java code is following, it doesn't work:
    Class.forName ("oracle.jdbc.driver.OracleDriver");
    Connection con = DriverManager.getConnection
    ("jdbc:oracle:thin:@10.16.102.176:1540:dev", "scott", "tiger");
    con.setAutoCommit(false);
    CallableStatement ps = null;
    String sql = " begin test_package.test_matrix( ?, ? , ? , ? ); end ; ";
    ps = con.prepareCall(sql);
    ps.setString(1,"p1");
    ps.setString(2,"p2");
    ps.setString(3,"p3");
    ps.registerOutParameter(4,OracleTypes.CURSOR);
    ps.execute();
    ResultSet rset = (ResultSet) ps.getObject(1);
    error message :
    PLS-00306: wrong number or types of arguments in call to 'TEST_MATRIX'
    ORA-06550: line 1, column 8:
    PL/SQL: Statement ignored
    Regards
    Louis

    Louis,
    If I'm not mistaken, record types are not allowed. However, you can use object types instead. However, they must be database types. In other words, something like:
    create or replace type ROW_ABC as object (
    col1 varchar2(16),
    col2 varchar2(16),
    col3 varchar2(16 )
    create or replace type MATRIX_ABC as table of ROW_ABC
    /Then you can use the "ARRAY" and "STRUCT" (SQL) types in your java code. If I remember correctly, I recently answered a similar question either in this forum, or at JavaRanch -- but I'm too lazy to look for it now. Do a search for the terms "ARRAY" and "STRUCT".
    For your information, there are also code samples of how to do this on the OTN Web site.
    Good Luck,
    Avi.

  • Procedure with table type out parameter

    Hi,
    I need to create a procedure which gives back a content of a table as an out parameter.
    i have tried something like below code
    it might not be correct since i am writing from home and cannot access any oracle db right now
    create or replace procedure test (
    table_out test_table%rowtype
    ) as
    type table_out test_table%rowtype
    begin
    select * into table_out
    from test_table
    where country = 'HUN';
    end;
    compile doesnt gives error, but when running it i get error
    declare
    table_out test_table%rowtype
    begin
    test( table_out );
    dbms_output.put_line( table_out );
    end;
    but it fails, could you help how to solve the above problem and call the proc correctly?
    thanks in advance

    Well you said you want the content of a table but your example says you just want a record. So for a record:
    CREATE OR REPLACE PROCEDURE sp_test (EMP_REC OUT EMP%ROWTYPE) IS
    BEGIN
        select * into emp_rec from emp where empno = 7369;
    END;The anonymous block to run it might be:
    declare
    tab_out emp%rowtype;
    begin
    sp_test(tab_out);
    dbms_output.put_line(tab_out.ename);
    end;As damorgan said the dbms_output can't be used with the record type. Notice I used it for the ENAME value of the record.
    If you really want the entire table then do it the way damorgan suggests. A pipeline function can give you the table but not as an OUT parameter.

  • How can I load string type fielt into oracle table as a date?

    I have a date field in oracle table(target) and my source is ms sql server. In my source table I have string type field include date data like '20150501'. I wanna load that data into oracle as a date field. In my target table this field type is date. But I cant load that data. It seems empty.I use convert function and its format is mssql format. How can I achive this? thanks in advance

    시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]시흥 QIQ-9529-1551 정왕동출장안마 ‡ 정왕동출장마사지 월곶출장안마]

  • Calling Oracle Stored proc with record type and table Type

    I have a oracle SP which takes record type and table Type which are used for order management.
    Is there anay way to populate parameters with these datatypes and call the stored procedure using ODP.NET?
    Please help.
    Thanks in advance

    Hi,
    ODP supports associative arrays and REF Cursors. There is no support for PLSQL table of records.
    Jenny

Maybe you are looking for

  • IPod touch recognized and mounted as digital camera

    I've connected my ipod tonight and for my surprise it was recognized by windows (7 RC1) as a digital camera and mounted as an external storage device. It shows 4.2GB of total space in DCF file system (?), wich is the amount shown in itunes as free sp

  • Iphoto and Powerpoint

    Would appreciate it if any one can help. My daughter has just got back from doing a presentation at school. She cant use Pages as the school PC systems just cant read it. She created in Powerpoint and imported photos from Facebook and iphoto by using

  • Report Designer - New Page

    Hi, We have created a report designer report that uses a Cost Center hierarchy. We want to display each node of the hierarchy on a new page. There is an option to select Page Break Before/After for the hierarchy header. If we select Page Break Before

  • Juno does not work with the latest version of firefox Why?

    I would love to install the latest version of Firefox, but when I attempted to It indicated that It was not compatible with my Juno email service, why don't you guys ever include Juno when you do updates? Very frustrating as now my browser experience

  • Itunes won't sync photos to ipod

    For some reason in iTunes I can't sync my photos in photo albums within iPhoto to my iPod anymore. It just won't do it; I say I want it to sync selected albums from within iPhotos, it says syncing ipod for about five seconds and then 'complete', but