In BULK COLLECT IN the Table "Record".

Hello

I can't find a solution for this case. I try to extract the data in an array of different records with subtype records.

-Table example:

CREATE THE TABLE1 TABLE:

("COLUMN1" NUMBER,

"COLUMN2" NUMBER,

"COLUMN3" NUMBER,

"COLUMN4" NUMBER,

COLUMN '5' NUMBER,

"COLUMN6" NUMBER

);

-Sample data:

INSERT INTO TABLE1 (COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6) VALUES ('11', '12', '13', '14', 15', 16');

INSERT INTO TABLE1 (COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6) VALUES ('21', '22', '23', '24', 25', 26');

INSERT INTO TABLE1 (COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6) VALUES ('31', '32', '33', '34', 35', 36');

INSERT INTO TABLE1 (COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6) VALUES ('41', '42', '43', '44,' 45', 46');

INSERT INTO TABLE1 (COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6) VALUES ('51', '52', '53', '54,' 55' 56');

Here, I stated some of the columns of the table as individual records / use in the RETURN of some of the features clause.

DECLARE

TYPE t_col_group1 IS RECORD (col2 of TABLE1. COLUMN2% TYPE

col3 TABLE1. COLUMN3% TYPE

);

TYPE t_col_group2 IS RECORD (col4 TABLE1. COLUMN2% TYPE

col5 TABLE1. COLUMN3% TYPE

);

TYPE t_coll_collection IS RECORD (col1 TABLE1. % TYPE COLUMN1

col_group1 t_col_group1

col_group2 t_col_group2

col6 TABLE1. % TYPE COLUMN1

);

TYPE t_table IS the TABLE OF t_coll_collection INDEX DIRECTORY.

v_table t_table;

CURSOR c_table IS

SELECT COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN 5, COLUMN6

FROM TABLE1;

BEGIN

OPEN c_table.

Get the c_table COLLECT in BULK IN v_table;

CLOSE C_table;

END;

I can ' manage to get the data in the table with the COLLECTION in BULK:

Fehlerbericht:

ORA-06550: Line 25, column 35:

PLS-00597: expression "V_TABLE" in the list IS of the wrong type

ORA-06550: Line 25, column 3:

PL/SQL: SQL statement ignored

06550 00000 - "line %s, column % s:\n%s".

* Cause: Usually a PL/SQL compilation error.

* Action:

Thank you!

André

My environment:

Oracle Database 11 g Release 11.2.0.3.0 - 64 bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE Production 11.2.0.3.0
AMT for Linux: Version 11.2.0.3.0 - Production

NLSRTL Version 11.2.0.3.0 - Production

You must define the SQL type

create or replace type t_col_group1 as an object (col2, col3 number number)
/
create or replace type t_col_group2 as an object (col4 number, number col5)
/
create or replace type t_coll_collection as an object
(
number of col1
col_group1 t_col_group1
col_group2 t_col_group2
number col6
)
/
create or replace type t_table as the t_coll_collection table
/

declare
v_table t_table;

cursor c_table
is
Select t_coll_collection
(
Column1
t_col_group1 (column2, column3)
t_col_group2 (column4, column5)
column6
)
FROM table1;
Start
Open c_table;
collect the fetch c_table in bulk in v_table;
close c_table;
end;
/

Tags: Database

Similar Questions

  • Bulk collect into a Table nested with Extend

    Hi all
    I want to get all the columns of the table emp and dept. So I use bulk collect into the concept of nested table.

    *) I wrote the function in three different ways. EX: 1 and 2 (DM_NESTTAB_BULKCOLLECT_1 & DM_NESTTAB_BULKCOLLECT_2) does not give the desired result.
    *) It only gives the columns of the EMP table. That means it takes DEPT & columns of the EMP table, but it only gives columns of table EMP.
    ) I think, there is something problem with nested table Extend.
    ) I want to know infested.
    Can we use bulk collect into a table nested with extend?
    If it is yes then fix the below codes (EX: 1 & EX: 2) and can you explain me please?


    Codes are given below *.

    CREATE OR REPLACE TYPE NEST_TAB IS TABLE OF THE VARCHAR2 (1000);

    EX: 1:
    ----
    -Bulk collect into a Table nested with Extend-
    CREATE or replace FUNCTION DM_NESTTAB_BULKCOLLECT_1
    RETURN NEST_TAB
    AS
    l_nesttab NEST_TAB: = NEST_TAB();
    BEGIN
    FOR tab_rec IN (SELECT table_name
    From user_tables
    WHERE table_name IN ('EMP', 'Department')) LOOP
    l_nesttab.extend;

    SELECT column_name
    bulk collect INTO l_nesttab
    Of user_tab_columns
    WHERE table_name = tab_rec.table_name
    ORDER BY column_id;
    END LOOP;

    RETURN l_nesttab;
    EXCEPTION
    WHILE OTHERS THEN
    LIFT;
    END DM_NESTTAB_BULKCOLLECT_1;

    SELECT *.
    TABLE (DM_NESTTAB_BULKCOLLECT_1);

    OUTPUT:
    -------
    EMPNO
    ENAME
    JOB
    MGR
    HIREDATE
    SAL
    COMM
    DEPTNO

    * Only the EMP table columns are there in the nested table.
    -----------------------------------------------------------------------------------------------------

    EX: 2:
    -----
    -Bulk collect in the nested with Extend based on County - Table
    CREATE or replace FUNCTION DM_NESTTAB_BULKCOLLECT_2
    RETURN NEST_TAB
    AS
    l_nesttab NEST_TAB: = NEST_TAB();
    v_col_cnt NUMBER;
    BEGIN
    FOR tab_rec IN (SELECT table_name
    From user_tables
    WHERE table_name IN ('EMP', 'Department')) LOOP
    SELECT MAX (column_id)
    IN v_col_cnt
    Of user_tab_columns
    WHERE table_name = tab_rec.table_name;

    l_nesttab. Extend (v_col_cnt);

    SELECT column_name
    bulk collect INTO l_nesttab
    Of user_tab_columns
    WHERE table_name = tab_rec.table_name
    ORDER BY column_id;
    END LOOP;

    RETURN l_nesttab;
    EXCEPTION
    WHILE OTHERS THEN
    LIFT;
    END DM_NESTTAB_BULKCOLLECT_2;

    SELECT *.
    TABLE (DM_NESTTAB_BULKCOLLECT_2);

    OUTPUT:
    -------
    EMPNO
    ENAME
    JOB
    MGR
    HIREDATE
    SAL
    COMM
    DEPTNO

    * Only the EMP table columns are there in the nested table.
    -------------------------------------------------------------------------------------------

    EX: 3:
    -----

    -Collect in bulk in a nested Table to expand aid for loop.
    CREATE or replace FUNCTION DM_NESTTAB_BULKCOLLECT_3
    RETURN NEST_TAB
    AS
    l_nesttab NEST_TAB: = NEST_TAB();
    TYPE local_nest_tab
    THE VARCHAR2 ARRAY (1000);
    l_localnesttab LOCAL_NEST_TAB: = LOCAL_NEST_TAB();
    NUMBER x: = 1;
    BEGIN
    FOR tab_rec IN (SELECT table_name
    From user_tables
    WHERE table_name IN ('EMP', 'Department')) LOOP
    SELECT column_name
    bulk collect INTO l_localnesttab
    Of user_tab_columns
    WHERE table_name = tab_rec.table_name
    ORDER BY column_id;

    BECAUSE me IN 1.l_localnesttab. COUNTING LOOP
    l_nesttab.extend;

    L_NESTTAB (x): = L_LOCALNESTTAB (i);

    x: = x + 1;
    END LOOP;
    END LOOP;

    RETURN l_nesttab;
    EXCEPTION
    WHILE OTHERS THEN
    LIFT;
    END DM_NESTTAB_BULKCOLLECT_3;

    SELECT *.
    TABLE (DM_NESTTAB_BULKCOLLECT_3);

    OUTPUT:
    ------
    DEPTNO
    DNAME
    LOC
    EMPNO
    ENAME
    JOB
    MGR
    HIREDATE
    SAL
    COMM
    DEPTNO

    * Now, I got the desired result set. DEP. and columns of the Emp Table are in the nested Table.




    Thank you
    Ann

    COLLECTION BULK cannot add values to an existing collection. It can only crush.

  • bulk collect into the collection of objects

    create or replace type typ_obj as an object
    (l_x number (10),)
    l_y varchar2 (10),
    LZ varchar2 (10)
    );

    Create the type typ_obj_tt is table of the typ_obj;

    / / DESC insert_table;
    c_x number (10)
    C_P number (10)

    temp2_table / / DESC
    doJir number (10)
    c_y varchar2 (10)
    c_z varchar2 (10)

    procedure prc_x (p_obj_out ON typ_obj_tt)
    is
    cursor c1
    is
    Select t1.c_x,
    T2.c_y,
    T2.c_z
    Of
    insert_table t1,
    temp2_table t2
    where
    ....
    ;
    Start
    Open c1;
    collect the fetch c1 into loose in p_obj_out;
    Close c1;

    end;

    raises the error

    can you tell
    How to enter data in this object of type of output table

    Thanks in advance... any help will be much appreciated...

    PL do not spam the forums with topics in double - bulk collect into the collection of objects

  • Subsequentes IN BULK COLLECT in the collection truncates existing lines?

    T_tab_prds TYPE IS the % TYPE my_cursor TABLE;

    v_tab_prds t_tab_prds;

    OPEN my_cursor;
    Fetch the my_cursor COLLECT in BULK IN v_tab_prds;
    NARROW My_cursor

    another session can change/remove lines

    OPEN my_cursor;
    Fetch the my_cursor COLLECT in BULK IN v_tab_prds; -V_tab_prds VA be zapped before second READING or lines will be mixed? I have to
    -manually remove lines of v_tab_prds before the second EXTRACTION?
    NARROW My_cursor

    I answered Yes initially "later in BULK collect into collection truncate existing lines. Then I noticed "another session can change or remove rows" in your message. The collection is in the object memory with PL/SQL unit scope, it is stated in which is obviously not covered by sessions. So even if the collection belongs to the same unit of PL/SQL (package, SP, etc.) in different sessions, it's a different chunk of memory. So the final answer is:

    Later in BULK COLLECT in the collection to the breast within the same instance of PL/SQL unit truncates existing lines. But obviously subsequent TO BULK COLLECT into the collection in another session won't affect collection in the first session.

    SY.

    Published by: Solomon Yakobson, October 13, 2009 14:20

  • Bulk collect into the record type

    Sorry for the stupid question - I do something really simple wrong here, but can not understand. I want to choose a few rows from a table in a cursor, then in bulk it collect in a folder. I'll possibly extended the record to include additional fields that I will select return of functions, but I can't get this simple test case to run...

    PLS-00497 is the main error.

    Thanks in advance.
    create table test (
    id number primary key,
    val varchar2(20),
    something_else varchar2(20));
    
    insert into test (id, val,something_else) values (1,'test1','else');
    insert into test (id, val,something_else) values (2,'test2','else');
    insert into test (id, val,something_else) values (3,'test3','else');
    insert into test (id, val,something_else) values (4,'test4','else');
    
    commit;
    
    SQL> declare
      2   cursor test_cur is
      3   (select id, val
      4   from test);
      5
      6   type test_rt is record (
      7     id   test.id%type,
      8     val      test.val%type);
      9
     10   test_rec test_rt;
     11
     12  begin
     13    open test_cur;
     14    loop
     15      fetch test_cur bulk collect into test_rec limit 10;
     16       null;
     17     exit when test_rec.count = 0;
     18    end loop;
     19    close test_cur;
     20  end;
     21  /
        fetch test_cur bulk collect into test_rec limit 10;
                                         *
    ERROR at line 15:
    ORA-06550: line 15, column 38:
    PLS-00497: cannot mix between single row and multi-row (BULK) in INTO list
    ORA-06550: line 17, column 21:
    PLS-00302: component 'COUNT' must be declared
    ORA-06550: line 17, column 2:
    PL/SQL: Statement ignored

    You must declare an array based on your registration type.

    DECLARE
       CURSOR test_cur
       IS
             SELECT
                id,
                val
             FROM
                test
       ;
    type test_rt
    IS
       record
       (
          id test.id%type,
          val test.val%type);
       type test_rec_arr is table of test_rt index by pls_integer;
       test_rec test_rec_arr;
    BEGIN
       OPEN test_cur;
       LOOP
          FETCH
             test_cur bulk collect
          INTO
             test_rec limit 10;
          NULL;
          EXIT
       WHEN test_rec.count = 0;
       END LOOP;
       CLOSE test_cur;
    END;
     31  /
    
    PL/SQL procedure successfully completed.
    
    Elapsed: 00:00:00.06
    ME_XE?
    

    Notice that the difference is...

       type test_rec_arr is table of test_rt index by pls_integer;
       test_rec test_rec_arr;
    
  • Get help in BULK COLLECT IN the treatment

    the following gives me PLS-00302 error: component 'R_MDATA' must be declared

    ---------------------------------------------

    declare

    error_1555 exception;

    pragma exception_init (error_1555,-1555);

    number num.

    -set the record

    TYPE RJ_RECORD is RECORD (r_rowr_mdata BLOB ROWID);

    -set the table based on the file type

    TYPE RJ_LIST_T IS TABLE OF RJ_RECORD

    INDEX BY PLS_INTEGER;

    -our structure will be bulk collect into

    l_List RJ_LIST_T;

    sql_str varchar2 (2000);

    cursor ovs_tab is SELECT table_name from user_tables;

    Start

    for c_rec in ovs_tab LOOP

    sql_str: = ' select rowid, m_data of ' | c_rec.table_name;

    run immediately sql_str

    COLLECTION in BULK IN l_list;

    for indx in 1.l_list. COUNTY

    LOOP

    Start

    NUM: = dbms_lob.instr (l_list. R_MDATA(indx), hextoraw ('889911')) ;  -He does not like r_mdata

    exception

    When error_1555 then

    -Insert in the values of corrupted_lob_data (l_list.rj_rowid (indx), c_rec.table_name);

    -commit;

    dbms_output.put_line (' corrupt tab = ' | c_rec.table_name);

    end;

    END LOOP;

    end loop;

    end;

    /

    change l_list.r_mdata (indx)

    TO

    .r_mdata l_list (indx)

    Each table has a column named m_data?

  • Bulk Collect and Millions of records.

    Hey guys,.

    I did experiences autour with big collect in GR 11, 2...

    I have millioms of files with very large tables.

    In fact, my question is this. How do you use bulk collect when you have millions of records?

    Everytime I try to use it for bulk collect into, I have run out of memory.

    So should I stick with the SQL engine when it comes to manipulate millions

    folders? Is maninly bulk collect for insert, updates to use for applications?

    Summer banging my head for awhile with it. Can a Pl/SQL pro if you please

    Give me some advice on this?

    In most cases SQL insert/update engine will end up more quickly then PL/SQL select + Insert/Update. Normally, you would use PL/SQL, if there is a complex logic that is based on calculations of several rows that can be easily made in SQL. If you must use BULK COLLECT many or / and wide lines, you can divide it into segments using LIMIT.

    SY.

  • Bulk collect into the statement

    Hi all

    I'm trying to copy data using the database link.

    I'm using the Oracle 11 g on Windows.

    I check the data in the source table and it exists. When I run under block it is running successfully but do return no data in the target database.

    SET SERVEROUTPUT ON

    DECLARE

    TYPE of t_bulk_collect_test_1 IS the TABLE OF NT_PROP % ROWTYPE;

    l_tab1 t_bulk_collect_test_1;

    CURSOR c_data1 IS

    SELECT *.

    OF NT_PROP@dp_copy;

    BEGIN

    OPEN c_data1.

    LOOP

    EXTRACTION c_data1

    LOOSE COLLECTION l_tab1 LIMIT 10000;

    commit;

    WHEN OUTPUT l_tab1.count = 0;

    END LOOP;

    CLOSE C_data1;

    END;

    /

    Could you get it someone please let me know what is the error in this code.

    Thanks in advance

    Bulk operation will not improve performance. Your code is a good example to show how to write code that is a performance nightmare. I'm sorry to say this, but it's the truth.

    Static SQL is the fastest way to do it. As you will transfer the data via a DB connection it will be certain overhead. But the block is not the solution for it. Make a simple INSERT INTO... SELECT... Beh It's the best way to do what you want.

  • Invalid without entering the table record $ E

    Hello

    I use Oracle as a source and target, but source and the target table is on different database.lets say

    table EMP_SRC table base-> ABC data

    table of EMP_TRG table made-> database XYZ

    and other dimension tables are also in the XYZ database. and all FK constraints are in fact table.

    I've created an interface in which the source dataset I drag the base table and the dimension table for the research and join the columns of code with the code of the table base and target side I'm populating the keys and measures value match the data in the base table that matched with table dim.

    I use KM

    LKM SQL for SQL

    IKM SQL incremental update

    Option:

    Flow control: true

    CKM SQL

    When I run the Interface it becomes successful with valid records but in the base table there is also some invalid record is wrong in the table $ E

    why it's happening? I missed something? Please help me

    Thank you.

    Well, how you it will grind if registration ends in the errors table?

    My results of suggestion in your 10 recordings for which the search failed being filled into the target table with an ID of 0 reference - which refers to the record of 'Undefined' in your dimension table.  So you need some kind of interface after cleaning in the process whereby records with any reference ID 0 are identified (for example select * from TARGET_TABLE where DIMENSION_ID = 0) and then cleaned up i.e. train, reason why the search has failed and correct.

    However, if you prefer that the records moved to the error table, apply a constraint to reference to the level of the Bank of data for each field in the base table that is used to find a dimension table (see 5.2.3.2) Iconsider data quality control

    For each record in the database table, this constraint of reference will be to look at the value in the referenced field and compare it to the reference table.  If the search value does not exist, then the record will fail the constraint and be rejected at the errors table in the static control.

  • When is a user created in the table record of $ WWSEC_PERSON?

    Hello-

    We use the OID for our SSO in the Oracle Portal. When we sync-> OID AD, when I ask the portal table $ WWSEC_PERSON and new users are not present. I must go to the Administration page of the portal, one of the users query and define a default group. After this action, they will have a record in the table for $ WWSEC_PERSON.

    The reason Im asking we try to automate the assignment of default group using the wwsec_api.set_defaultgroup api, but because these users are missing from the table of $ WWSEC_PERSON, they have obviously not possible to assign a group.

    Is there a way to force new users in the portal DB table? At all automated type of assignment?

    Thank you
    Brian

    I found this ODS. DS_ATTRSTORE comes in very handy to query OID using SQL data. There are several records attribute for each entry. The "uid" attribute contains the user name and "createtimestamp" contains the timestamp for when the user has been created in OID after being synced from AD. The attribute "orcldefaultprofilegroup" stores the default portal for the user group too.

  • Returns the Collection using the table function

    Hello

    I'm trying to return a collection with registration type using the function table but face some problems.

    Could someone help me with this.
    SUNNY@11gR1> create or replace package test_pack as
      2  type rec_typ is record (
      3  empname varchar2(30),
      4  empage number(2),
      5  empsal number(10));
      6  type nest_typ is table of rec_typ;
      7  function list_emp return nest_typ;
      8  end;
      9  /
    
    Package created.
    
    Elapsed: 00:00:00.01
    SUNNY@11gR1> create or replace package body test_pack is
      2  function list_emp return nest_typ is
      3  nest_var nest_typ := nest_typ();
      4  begin
      5  nest_var.extend;
      6  nest_var(nest_var.last).empname := 'KING';
      7  nest_var(nest_var.last).empage := 25;
      8  nest_var(nest_var.last).empsal := 2500;
      9  nest_var.extend;
     10  nest_var(nest_var.last).empname := 'SCOTT';
     11  nest_var(nest_var.last).empage := 22;
     12  nest_var(nest_var.last).empsal := 3500;
     13  nest_var.extend;
     14  nest_var(nest_var.last).empname := 'BLAKE';
     15  nest_var(nest_var.last).empage := 1;
     16  return nest_var;
     17  end;
     18  end;
     19  /
    
    Package body created.
    
    Elapsed: 00:00:00.01
    SUNNY@11gR1> select * from table(test_pack.list_emp);
    select * from table(test_pack.list_emp)
                        *
    ERROR at line 1:
    ORA-00902: invalid datatype
    
    
    Elapsed: 00:00:00.01
    SUNNY@11gR1>
    Kind regards
    Sunny

    Hello

    I had to look, because I didn't know the difference. If you use a function in the pipeline, then Oracle will create the implicit type. Take a look at the types:

    select object_name from user_objects where object_type ='TYPE';
    

    There are now objects that you create yourself, having PLSQL in name.

    If you try your first example, you will see it will be no object created by implicit Oracle, so you must declare yourself in SQL.

    Herald tiomela
    Superconsult.nl

  • Event in the collection of the table object

    I'm using Flash Builder 4 and working on an AIR application. I have a browser tab in my application and a popup that allows you to create an order. They can click an Add button to add items to the order, which adds lines to a datagrid control. When he clicks on save an event with an actionscript class is shot and pass order information with an object that must be added to a collection of table in the main application to display in the page backlog of orderitems. The news of command goes through fine.

    I can't find how to add the event.orderitems which is an object in the localOrderItems:Arraycollection for the commands that I use, I'm storing an object stored for orders when the pc is in offline mode, so they can submit them as soon as they are brought back online. This shows the first item in the list and I got out and tenant to display items.

    private void saveOrder(event:SaveOrder): Sub

    {

    store orders

    var : command = new Order();

    order.storeId = event.storeId;

    order.orderUID = event.orderUID;

    localOrders.addItem (order);

    localOrdersSO.data.orders = localOrders;

    localOrdersSO.flush ();

    Shop for order

    localOrdersItemsSO.data.items = event.orderItems;

    localOrdersItemsSO.flush ();

    PopUpManager.removePopUp (createOrderScreen);

    }

    for each {(o: Object var in newItems)

    oldItems.push (o);

    }

    See

    http://livedocs.Adobe.com/Flex/3/HTML/Help.HTML?content=03_Language_and_Syntax_16.html

  • Lines in bulk insert in the table of the adf.

    Hello

    My requirement is to insert rows selected from a VO in a new OT at the same time.

    Can anyone guide me on this please?

    Thanks in advance.

    Not really sure what you are after.

    If you say that you have the details in a readOnly VO and now you must insert in a based EO VO, then Yes, you must go through the lines.

    You can refer to the blog below which speaks the lines of cloning.

    https://blogs.Oracle.com/vijaymohan/entry/cloning_a_view_object_rows_adfbc_way

    It will be useful.

    See you soon

    AJ

  • Bulk collect using some different column insert a table

    Hi all

    I gave an example of emp table in my original 100 million table record are I need to change group (IE deptno) 10 to 20 copy the same records

    about these codes, I get exception

    ORA-06550: line 11, column 53:

    PLS-00386: concordance that is 'EMP_TAB' between FETCH cursor and IN variables of type

    can help me please for these

    declare

    type row_tab is table emp % rowtype

    INDEX BY PLS_INTEGER;

    emp_tab row_tab;

    cursor cur_emp is select ENAME, 20 DEPTNO, HIREDATE, emp COMM EMPNO;

    Start

    Open cur_emp;

    loop

    Cur_emp fetch bulk collect in the limit emp_tab 2000;

    ForAll i in 1.emp_tab. COUNTY

    Insert / * + APPEND * / into emp (EMPNO, ENAME, DEPTNO, HIREDATE, COMM)

    values (emp_tab (i). EMPNO, emp_tab (i). Ename, emp_tab (i). DEPTNO, emp_tab (i). HIREDATE, emp_tab (i). COMM.) ;

    When the output cur_emp % notfound;

    END LOOP;

    close cur_emp;

    end;

    /

    Thank you

    VSM

    I use the user define the type of record to over come error

    declare

    type emp_rt is record (empno, ename emp.ename%type,deptno NUMBER (2) emp.empno%type, hiredate emp.hiredate%type,comm emp.comm%type);

    TYPE row_type IS the emp_rt INDEX TABLE OF pls_integer;

    emp_tab row_type;

    cursor cur_emp is select empno, ename, 20 deptno, hiredate, comm from emp where deptno = 10;

    Start

    Open cur_emp;

    loop

    Cur_emp fetch bulk collect in the emp_tab limit 2;

    ForAll i in 1.emp_tab. COUNTY

    Insert / * + APPEND * / into EMP (EMPNO, ENAME, DEPTNO, HIREDATE, COMM)

    values (emp_tab (i). EMPNO, emp_tab (i). ENAME, emp_tab (i). DEPTNO, emp_tab (i). HIREDATE, emp_tab (i). COMM.)

    ;

    When the output cur_emp % notfound;

    END LOOP;

    close cur_emp;

    end;

    /

    records are successful inserted, I do not know is not the right approach for 100 million documents?

    Thank you

    VM

  • Error: PLS-00103: encountered the symbol 'COLLECT' during the waited in the following way:. (, limiting the symbol)

    Hi all

    I get this error:

    • Error (55,45): PLS-00103: encountered the symbol 'COLLECT' during the waited in the following way:. (, limiting the symbol ".") has been inserted before 'COLLECT' to continue.

    While trying to create this procedure as below:

    If I run the query, I get the result, but in the procedure, I am trying to convert the OUT_REFCURSOR in a table, but this error.

    PROCEDURE SP_GETVALIDATE)

    IN_CASEID IN VARCHAR2,

    IN_REQID IN VARCHAR2,

    OUT_REFCURSOR ON SYS_REFCURSOR)

    AS

    IS OF TYPE RECORDTYPE

    RECORD (COL1, COL2 VARCHAR2 VARCHAR2);

    IS OF TYPE TABLETYPE

    THE REFTABLETYPE TABLE

    INDEX BY PLS_INTEGER;

    BEGIN

    OPEN for SELECT OUT_REFCURSOR c.RCRD_NO, c.STE_NO_TX DE T_LYR_STES c, p of LAND WHERE c.case_id = IN_CASEID AND p.L_NUMBER > 100;

    LOOP

    Look FOR the OUT_REFCURSOR BULK COLLECT outtable;

    WHEN the outtable OUTPUT. COUNT = 0;

    FOR indx IN 1... outtable. COUNTY

    LOOP

    dbms_output.put_line (outtable (indx). ) RCRD_NO);

    END LOOP;

    END LOOP;

    CLOSE OUT_REFCURSOR;

    END SP_GETVALIDATE;

    I could be wrong here.

    any help appreciated.

    Thank you

    Ken

    SEARCH OUT_REFCURSOR BULK COLLECT INTO outtable;

    You've had your BULK COLLECT and the wrong way around

Maybe you are looking for

  • Firefox no longer offer to save passwords. Why?

    Very confusing. As I create this account, instant, Firefox to offer to save my password and update when I had to go home, still about connecting to other sites, for example NYTimes.com, the supply never comes upward. no verification of saved password

  • No start after the sp3 of Windows install

    After the installation of sp3 for windows xp home, in normal mode and safe mode, windows starts in safe mode and show the installed sp3 but does not start in normal mode.

  • problems with downloads

    I have this function of issues, can not download microsoft updates, cannot run the validation tool, if I try the windows update I get redirected to a blank page with the message cannot display the page or the web page of google or other, can not down

  • program

    Windows Installer CleanUp Utility - is a good thing?

  • Try to reinstall CS4 [can't find valid serial number]

    HelloMy computer crashed, I had a new hard drive put in, and when I try to reinstall my CS4 update it asks me to enter a valid serial number for the product. I put in the number on the box and I get an error code that it does not. So I wonder if I wa