execute immediate delivery when calling a plsql block procedure

Hi all

I have the following simple code, my immediate execution does not work (I am pasting the below error as well)

CREATE OR REPLACE PROCEDURE CALL_RAHUL_PROCEDURES
AS
strng varchar2 (1000);

BEGIN
I'm in (select proc_name, flag, the rahul_procedures by id order id)
loop
If (i.flag = 'Y')
then
strng: = 'exec'. i.proc_name |' ("rahul")';
dbms_output.put_line (strng);
run immediately strng;
end if;
end loop;

END CALL_RAHUL_PROCEDURES;

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

Error:

Connect to the INQDWD database.
ORA-00900: invalid SQL statement
ORA-06512: at "ETLADMIN. CALL_RAHUL_PROCEDURES', line 17
ORA-06512: at line 2
exec ('rahul') RAHUL_HELLO_WORLD2;
Process is complete.
Disconnection from the INQDWD database.

----------------------------------------------------
data in the rahul_procedures table:
Proc_name flag Id
RAHUL_HELLO_WORLD 1 N
RAHUL_HELLO_WORLD2 Y 2
RAHUL_HELLO_WORLD N 3
RAHUL_HELLO_WORLD3 N 4

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

Help, please.

Concerning
Rahul

Transform your dynamic string in an anonymous PL/SQL block:

strng := 'begin '||i.proc_name||'(''rahul''); end;';

Tags: Database

Similar Questions

  • Execute Immediate and by calling a function

    I'm calling a function by using the Execute Immediate, but not sure what the correct syntax for the function's return value after the Execute Immediate runs.

    I need the value for further processing in my PL/SQL package.

    I tried several methods, but cannot get the right format for this work/compilation.


    EExecute Immediate plsql_block back in ShName2;

    Have been that plsql_block has the code to:
    Declare shname2 varchar2 (4000); Begin shname2: = lurking. ShortNm ('STRUCTURE'); End;
    SQL> set serveroutput on
    SQL>
    SQL> create or replace
      2  function fun
      3     return varchar2
      4  is
      5  begin
      6     return 'hello';
      7  end fun;
      8  /
    
    Function created.
    
    SQL>
    SQL>
    SQL> declare
      2     var varchar2(100);
      3  begin
      4     execute immediate 'begin :this := fun; end;' using in out var;
      5    dbms_output.put_line(var);
      6  end;
      7  /
    hello
    
    PL/SQL procedure successfully completed.
    
    SQL> 
    
  • execute immediate delivery

    Hi all

    I am trying to generate an insert in the chain of the table in my plsql code and try something like:

    strng: = ' insert into emp values('''|| rec_record_employees.first_name||''','|| rec_record_employees.) Salary |') ; " ;
    dbms_output.put_line (strng);
    run immediately ' insert into emp values('''|| rec_record_employees.first_name||''','|| rec_record_employees.) Salary |') ; " ;

    the immediate part of execute is thrown an exception, could any1 please help me because I am new to plsql, I try to insert the line in my emp table with structure as emp (name int varchar2.salary)

    Concerning
    Rahul

    Remove the semi colon ";" your string and try again.

  • EXECUTE IMMEDIATE throws exception NO_DATA_FOUND when it should not

    Hi all

    I wrote an anonymous PL/SQL block that, on paper, should be OK, but one of its commands EXECUTE IMMEDIATE is runnning slowing prematurely and throw an exception NO_DATA_FOUND, when it should not because I know that there is data in the table.

    Here is the line that I suspect is out of steam after 8 attempts:


    ---
    immediately execute "INSERT INTO ple101.circular35 (ID, SLAVETABLEID, SLAVEITEMID, MASTERTABLEID, MASTERITEMID, PRO) (SELECT * FROM SLAVETASKS where mastertableid =' |)" subTableID | "and masteritemid =' |" subitemID |' and subtableid =' | mastTableID | "and SLAVEITEMID =' |" mastItemId |') ' ;
    ------

    It is supposed to search the entire SLAVETASKS table for documents that match the WHERE clause, but gives up after 8 cycles.
    Table SLAVETASKS got 10228 records.

    The above statement (and the whole of the PLSQL block) is good in that it gets records if they are wthin the first 8 records in the SLAVETASKS table, but like I said after 8 records, to throw an exception NO_DATA_FOUND.

    Published by: user10390960 on April 28, 2012 03:21

    Published by: user10390960 on April 28, 2012 03:22

    Published by: user10390960 on April 28, 2012 03:23

    Published by: user10390960 on April 28, 2012 05:08

    Hi Goofy,

    The above script is for PLSQL and if you want to display the data in circular 35 follow like that

    # Save the code below in the sqlscript for example. circular_process_display. SQL and run as

    sqlplus /@ @circular_process_display.sql

    -- CREATE TABLE circular 35
    CREATE TABLE circular35
    ....
    ..
    /
    
    -- Execute PLSQL Block as given in my earlier post
    DECLARE
    ...
    BEGIN
    ...
    EXCEPTION
    ...
    END;
    /
    
    -- Run SQL to display output on screen.
    SET SERVEROUTPUT ON SIZE 100000 FEEDBACK ON LINESIZE 200;
    
    SELECT *
    FROM circular35
    /
    
    {code}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
    
  • Hi, I am not able to execute the procedure using dblink in PLSql block. Although he works outside the end of the beginning. Please suggest solution

    Hello

    I'm not able to execute the procedure using dblink in PLSql block.

    Although he works outside the end of the beginning.

    Please suggest solution

    Hello

    Thanks everone for your contributions,

    As well as the permissions, I used to run inside the PL sql block, which was not necessary, we can simply call the procedure using dblink.

    Thanks guys,.

  • What happens when a number of blocked calls a person and they're on another line?

    What happens when a number of blocked calls the person and they're on another line? Does go directly to voicemail, or ring several times to voice mail?

    If "on the other line" means on another call and call waiting is activated, the blocked call goes straight to voicemail.

  • PLSQL block does not run

    Hi all

    PLSQL block is not executing .showing reference out of reach. ?


    create or replace procedure sma
    is

    cursor c4 (P_no number) is select * from employee where department_id = P_no;
    I have used % rowtype;
    Start
    Open c4 (90);
    loop
    extract the c4 inside;
    When the exit c4% notfound;
    dbms_output.put_line (I.employee_id |) I.first_name);
    end loop;
    Close c4;
    end;

    /

    Start
    SMA. C4;
    end;

    image.png

    Capture.PNG

    And how he can run if the procedure name is SMA when you call ADM. C4? Question:

    BEGIN

    ADM;

    END;

    /

    PYM

  • How to create and insert data with Execute Immediate?

    Hi guys

    Am stuck on a procedure of formatting in a package... script works okay however integrating a module turns out to be difficult!

    Am not used to oracle... I have the script runs, but not in the package... Well not all that... Drop Table worked

    CREATE or REPLACE PACKAGE BODY is

    PROCEDURE DropTable1 IS

    BEGIN

    run immediately ("DROP TABLE mytable1");

    END;

    PROCEDURE PopulateTable1 IS

    BEGIN

    immediately execute ('CREATE TABLE mytable1 )

    AS LONG AS)

    Select

    substr (T1.genarea, 3, 3) as M_Class,

    substr (T1.genarea, 6, 30) as M_Description,

    substr (T1.genarea, 36, 3) as M_Class,

    substr (T1.genarea, 39, 30) as M_Description,

    substr (T1. ItemItem, 1, 3) as product_code,.

    T3. CHANNEL_NUM as SALES_CHANNEL,

    to_date(''t2.time_id'',''dd-mon-yyyy'') as mis_date,

    Sum (T2.ap_cw_cfi_irp + T2.ap_cw_issues_irp) as ap_gross,

    sum (t2. Ap_Cw_Cfi_Irp + t2. Ap_Revivals_Irp) as ap_net,

    Sum (T2.sp_inc_irp + T2.sp_issues_irp) as sp_gross,

    Sum (T2.sp_dec_irp + T2.sp_fs_irp) as sp_net

    Of

    d_pr t1, t2 age_map t3 law

    where

    T1.pfx = "WE"and t1.coy ="1" and t1.tabl = "T81" and substr (t1.itemitem, 1, 3) = t2.product_id and t3. AGE_NUM = t2.age_id

    Group

    substr (T1.genarea, 3, 3),

    substr (T1.genarea, 6, 30),

    substr (T1.genarea, 36, 3),

    substr (T1.genarea, 39, 30),

    substr (T1. ItemItem, 1, 3).

    T3. CHANNEL_NUM,

    to_date(''t2.time_id'',''dd-mon-yyyy'')

    )');

    COMMIT;

    END PopulateTable1;

    END test;

    /

    Thank you

    Hello

    a few notes.

    1. to_date(t2.time_id,'dd-mon-yyyy')

    New York T2.Time_ID Cis the varchar2 data type that contains values to JJ-me-YYYY format?

    And if, in which language is used for the names of the months? Conversions are point impossible to solve in reasonable time limits without logging of dml errors and unique failure on charges of staging nightly!


    2 single quote escaping "alternative in string literals.

    You can use Q or q to escape single quotes in strings.

    http://docs.Oracle.com/database/121/SQLRF/sql_elements003.htm#SQLRF00218

    3. validation

    Not required because the DDL commands commit implied.

    In general I recommend you write commit clauses only in calling script rather than in the code unless it connects with an autonomous transaction.

    You end up with a lot of validation of code here and there and you don't know where it is and where it isn't. That is, your process may have more than one appeal process and commit the middle of the process, it is not atomic processes.

    Here's the demo although I recommend also using the static table and truncate to efficiency. ETG is good choice for the purpose of maintenance table.

    create or replace
    package testing is
      procedure staging_one;
    end;
    /
    create or replace
    package body testing is
      --
      procedure staging_one is
        --
        procedure drop_staging_one is
          table_does_not_exist exception;
          pragma exception_init(table_does_not_exist, -00942);
        begin
          execute immediate q'{
            drop table staging_one purge
          }';
        exception when table_does_not_exist then
          return; -- fine
        end;
        --
        procedure create_staging_one is
        begin
          execute immediate q'{
    
            -- remove >>>
            create table staging_one nologging
            as
            select * from dual
            -- <<< remove
    
            /* uncomment >>>
            create table staging_one nologging
            as
            select
              substr(t1.genarea,3,3)                    as m_class,
              substr(t1.genarea,6,30)                   as m_description,
              substr(t1.genarea,36,3)                   as m_class,
              substr(t1.genarea,39,30)                  as m_description,
              substr(t1.itemitem,1,3)                   as product_code,
              t3.channel_num                            as sales_channel,
              to_date(t2.time_id,'dd-mon-yyyy')         as mis_date,
              sum(t2.ap_cw_cfi_irp+t2.ap_cw_issues_irp) as ap_gross,
              sum(t2.ap_cw_cfi_irp+t2.ap_revivals_irp)  as ap_net,
              sum(t2.sp_inc_irp   +t2.sp_issues_irp)    as sp_gross,
              sum(t2.sp_dec_irp   +t2.sp_fs_irp)        as sp_net
            from
              d_pr t1,
              act t2,
              age_map t3
            where
              t1.pfx                      = 'IT'
              and t1.coy                  = '1'
              and t1.tabl                 = 'T81'
              and substr(t1.itemitem,1,3) = t2.product_id
              and t3.age_num              = t2.age_id
            group by
              substr(t1.genarea,3,3),
              substr(t1.genarea,6,30),
              substr(t1.genarea,36,3),
              substr(t1.genarea,39,30),
              substr(t1.itemitem,1,3),
              t3.channel_num,
              to_date(t2.time_id,'dd-mon-yyyy')
            <<< uncomment */
          }';
          --
        end;
      -- main
      begin
        drop_staging_one;
        create_staging_one;
      end;
    end;
    /
    
    set serveroutput on
    
    exec testing.staging_one;
    
    select * from staging_one
    ;
    commit
    ;
    
    PACKAGE TESTING compiled
    PACKAGE BODY TESTING compiled
    anonymous block completed
    DUMMY
    -----
    X 
    
    committed.
    
  • Maximum size of EXECUTE IMMEDIATE

    Hellou everyone,

    I would like to ask if there is a way how to run the dynamic SQL CREATE or VIEW of REPLACE command more than 32 KB of wholesale. Because the EXECUTE IMMEDIATE statement can run up to 32 k (greater length of variable plsql chain) chain

    Is there a way how children Ridge or replace the command?

    Or I need to revrite using DBMS_SQL.

    Thank you.

    (a) WHY? If you want to dynamically create views?  This is not recommended because your application/database should be designed at the time of the design, not running.

    (b) If you are on 11 g, you can use the CLOB datatype with immediate execution, so there is no 32 K limit.

    (c) If you are before 11 g you need to update, but if you can't then the following example is how you do it using DBMS_SQL.

    SQL > declare

    2 v_large_sql clob.

    3 v_num number: = 0;

    number of v_upperbound 4;

    5 v_sql dbms_sql.varchar2s;

    6 whole v_cur;

    number of v_ret 7;

    8 v_join_sql varchar2 (100): = ' crΘer view vw_tmp as ";

    9 start

    10. build a very big SQL statement in the CLOB

    11 loop

    12 v_large_sql: = v_large_sql | v_join_sql | "select" the number of this line is: ' | TO_CHAR (v_num, 'fm0999999') | " "as col1 from dual;"

    13 v_join_sql: = "union all";

    14 v_num: = v_num + 1;

    15 exit when dbms_lob.getlength (v_large_sql) > 40000 or v_num > 800;

    16 end loop;

    17 dbms_output.put_line (' length :'||) DBMS_LOB. GetLength (v_large_sql));

    18 dbms_output.put_line ('Num :'|| v_num);

    19-

    20. now divide this big SQL statement into pieces of 256 characters and put in table VARCHAR2S

    21 v_upperbound: = ceil ((v_large_sql) dbms_lob.getlength / 256);

    22 because me at 1.v_upperbound

    23 loop

    24 v_sql (i): = dbms_lob.substr (v_large_sql

    25, 256 - amount

    26, ((i-1) * 256) + 1 - offset

    27                                 );

    28 end of loop;

    29-

    30. now analyze and execute the SQL statement

    31 v_cur: = dbms_sql.open_cursor;

    32 dbms_sql.parse (v_cur, v_sql, 1, v_upperbound, dbms_sql.native, false);

    33 v_ret: = dbms_sql.execute (v_cur);

    34 dbms_output.put_line ("' view created");

    35 dbms_sql.close_cursor (v_cur);

    36 end;

    37.

    Length: 40015

    NUM:548

    View created

    PL/SQL procedure successfully completed.

    SQL > select count (*) in the vw_tmp;

    COUNT (*)

    ----------

    548

    SQL > select * from vw_tmp where rownum<=>

    COL1

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

    The number of this line is: 0000000

    The number of this line is: 0000001

    The number of this line is: 0000002

    The number of this line is: 0000003

    The number of this line is: 0000004

    The number of this line is: 0000005

    The number of this line is: 0000006

    The number of this line is: 0000007

    The number of this line is: 0000008

    The number of this line is: 0000009

    10 selected lines.

    SQL >

  • Dynamic performance of plsql block of relaxation.

    Dear oracle Experts.
    I'm using the following oracle database.

    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
    PL/SQL Release 10.2.0.4.0 - Production
    CORE 10.2.0.4.0 Production
    AMT for Linux: release 10.2.0.4.0 - Production
    NLSRTL Version 10.2.0.4.0 - Production

    I have a problem in the execution of the trigger. I have a small plsql block in the trigger, and I want to run it as a dynamic medium. but it gives the error. Please find the code of the trigger. Here my intension is that the column name used in trigger must be dynamic. In the future, if I want to pass the name of the column, I do without modification in the trigger.
    The error im getting is "ORA-01008: not all variables.

    Or y at - it another way to achieve this goal. Please suggest your ideas. Thank you!!!

    CREATE OR REPLACE TRIGGER ETM_AR_IU
    AFTER UPDATE ON
    EXTERNAL_MAPPING
    REFERRING AGAIN AS NINE OLD AND OLD
    FOR EACH LINE

    DECLARE
    V_COL_NAME VARCHAR2 (30);
    PL_SQL_BLOCK VARCHAR2 (1000);

    BEGIN

    SELECT T.COL_NAME IN THE TRIGGER_TABS_COLS V_COL_NAME T;
    PL_SQL_BLOCK: = '
    BEGIN
    IF: OLD.' | V_COL_NAME | "<>: NEW.'" V_COL_NAME |
    "THEN."
    INSERT INTO hema_clob VALUES (: NEW.'|) V_COL_NAME |') ;
    END IF;
    END;';
    IMMEDIATELY RUN PL_SQL_BLOCK;
    END;

    As immediate execution will execute the code as if it were a separate process of the trigger, this dynamic PL/SQL block is unlikely to have access to the: NEW and: OLD trigger variables.

    Dynamic SQL is pretty bad.
    Dynamic PL/SQL is just stupid.
    Dynamic PL/SQL within a trigger... ' enough said.

  • How to set multiple parameters in a sql EXECUTE IMMEDIATE

    I want to set nls_language and nls_date_language and set them as different languages. fnd_global.set_nls_context () does not work. So I think I can use the EXECUTE IMMEDIATE and add them together into a single statement. But I don't know how to make that happen. Can someone help me? Thank you very much.

    PS: It must be done in a single call.

    928091 wrote:
    Hey, thanks for your reply, I forgot to mention that it should be in the begin-end block, do you know how?

    EXEC is a more SQL API which can be used to execute the PL/SQL code. What it does is put the PL/SQL code in a BEGIN block... END of block and run.

    So, you can also manually put code in a BEGIN block... END of block and run like that.

    SQL> begin
      2     execute immediate q'[begin execute immediate 'alter session set nls_date_language = ''AMERICAN'''; execute immediate 'alter session set nls_language = ''AMERICAN'''; end;]';
      3  end;
      4  /
    
    PL/SQL procedure successfully completed.
    
    SQL> 
    

    And I don't understand what possible benefit he made a single run in a BEGIN block... Terminate during execution of multiples.

    Why this code is not in your interest, something like this

    begin
         execute immediate 'alter session set nls_date_language = ''AMERICAN''';
         execute immediate 'alter session set nls_language = ''AMERICAN''';
    end;
    /
    
  • PLSQL block for compression of multi tables

    I have a user xxxxxx, he owned 65 paintings, I want to compress all these tables at once
    one may suggest the write block plsql to compress all tables at once

    to compress a table "alter table table_name move compress.

    You can compress one at a time can therefore either use a loop in a PL/SQL like so block...

    DECLARE
    
           TYPE tt_TabList IS TABLE OF user_tables.table_name%TYPE;
    
           l_TabList       tt_TabList;
    
    BEGIN
    
         SELECT
               table_name
         BULK COLLECT INTO
              l_TabList
         FROM
             user_tables;
    
         FOR li_Tab IN 1..l_TabList.COUNT
         LOOP
    
             EXECUTE IMMEDIATE 'ALTER TABLE '||l_TabList(li_Tab)||' MOVE COMPRESS';
    
         END LOOP;
    
    END;
    

    Or you could generate the DDL statements and run them in SQL * more

    SELECT 'ALTER TABLE '||table_name||' MOVE COMPRESS;' FROM user_tables
    

    HTH

    David

  • EXECUTE IMMEDIATE and NO_DATA_FOUND

    Hi all
    in my proc, I need to create a block for the select statement to continue with the process flow, because when the select returns no value I get the error ORA-01403: no data found.

    BEGIN
    Start
    query_stmt: = ' select CUST_FIRST_NAME in the OEHR_CUSTOMERS where ACCOUNT_MGR_ID =: 1';
    EXECUTE IMMEDIATE query_stmt in l_value using PK;
    EXCEPTION
    WHEN NO_DATA_FOUND THEN
    audit_exception (SQLCODE, SUBSTR (SQLERRM, 1, 128), SYSTIMESTAMP);
    l_value: = null;
    end;
    query_stmt: = ' delete from OEHR_CUSTOMERS where ACCOUNT_MGR_ID =: 1';
    EXECUTE IMMEDIATE query_stmt using PK;
    query_stmt: = ' delete from OEHR_EMPLOYEES where MANAGER_ID =: 1';
    EXECUTE IMMEDIATE query_stmt using PK;
    query_stmt: = ' delete from OEHR_EMPLOYEES where EMPLOYEE_ID =: 1';
    EXECUTE IMMEDIATE query_stmt using PK;
    EXCEPTION
    WHILE OTHERS THEN
    audit_exception (SQLCODE, SUBSTR (SQLERRM, 1, 128), SYSTIMESTAMP);
    LIFT;


    Is there another solution to continue with the flow of treatment using dynamic SQL and select the statement without the block, because this way, I have to change a lot of code.

    Thank you
    Sergio

    JoL says:
    I used dynamic sql code with bind variable because I red this combination to improve performance (SQL is DB riutilizable) and for reasons of safety (protection against SQL Injection attacks).

    Sergio

    OK, bind variable improve performance and prevent SQL injections, however just refers to the difference between... for example

    immediately execute "delete from table1 where col1 = ' |" col1_value;

    and

    immediately execute "delete from table1 where col1 =: 1' using col1_value;"

    However,.

    When you write a DML directly in PL/SQL statement, then what is a local variable (not inside the SQL tables themselves) e.g. PK in your code is linked automatically as a variable binding by the PL/SQL engine, if of course they are bind variables and do not impinge on the performance. If you run a DML statement directly within PL/SQL like this and then check it running (assuming you've been pretty fast) via Enterprise Manager, you would see one of the places where you specified a local variable: 1: 2, etc.

    ;)

  • LabVIEW crash when calling matlab script?

    My version of labview 8.6, Matlab is 7.1. In the beginning, I always get error 1047 when calling matlabscript, then I downloaded recommended matscript.dll (7.1.0.2) and replace the original one (8,6) with this one. 1047 error does not happen. And the matlabscript code can be executed. However the labview crashes after that Matlab is called.

    In fact my matlab file works well. At the end of the matlab code, data must be included on the photo. And it is. But after the image is shown, my labview breaks down, and when I reload the labview, it only invites me 'the last time you run labview, it is not stopped normally. The following files are automatically saved and are available for recovery.

    I used same monitor recommended treatment. But I can't find any reason. I've removed the scriptnode output, it does the same thing.

    anyone has a suggestion. I really appreciate your help.

    Jessie

    I would say the matscript DLL that you copied on the removal and run a repair on the LabVIEW installation to see if that replaces the missing files.

  • How to run execute immediate with variables

    Hi friends,
    How to run execute immediate with variables in v_stmt below?
    I don't know how to declare value I have here.
    Set serveroutput on;
    DECLARE
       i        VARCHAR (20);
       v_stmt   VARCHAR2 (100);
    
       CURSOR c
       IS
          SELECT sqlid FROM temp1;
    
    
    BEGIN
       OPEN c;
    
       LOOP
          FETCH c INTO i;
          EXIT WHEN c%NOTFOUND;
          DBMS_OUTPUT.put_line (i);
          v_stmt := 'select * from table(dbms_xplan.display_cursor('&i',null))'
          execute immediate v_stmt;
       END LOOP;
    
       CLOSE c;
    END;
    /
    Regds,
    Kunwar.

    You must first use a variable binding (named ': v' in the SQL statement in my example):

    set serveroutput on;
    DECLARE
       i        VARCHAR (20);
       v_stmt   VARCHAR2 (100);
    
       CURSOR c
       IS
           -- modified for a quick test
          SELECT sql_id FROM v$sql where child_number > 2;
    
    BEGIN
       OPEN c;
    
       LOOP
          FETCH c INTO i;
          EXIT WHEN c%NOTFOUND;
          DBMS_OUTPUT.put_line (i);
          v_stmt := 'select * from table(dbms_xplan.display_cursor(:v,null))';
          execute immediate v_stmt using i;
       END LOOP;
    
       CLOSE c;
    END;
    /
    

    However because your SELECT statement returns multiple lines, you need to adapt your code to process all rows returned (as already suggested in first response to your message).

    Instead of using the PL/SQL, I recommend you to generate a SQL file using only SQL, and then run the generated SQL file.
    For example:

    spool edx.sql
    set serveroutput on
    declare
    v_stmt varchar2(100);
    v_q char(1):='''';
    begin
    dbms_output.put_line('spool edx.log');
    for s in (select sql_id from v$sql where child_number >2)
     loop
      dbms_output.put_line('select * from table(dbms_xplan.display_cursor(' || v_q || s.sql_id || v_q || ',null));');
     end loop;
     dbms_output.put_line('exit');
    end;
    /
    spool of
    

    This generates a file similar to:

    spool edx.log
    select * from table(dbms_xplan.display_cursor('5rygsj4dbw6jt',null));
    select * from table(dbms_xplan.display_cursor('5rygsj4dbw6jt',null));
    select * from table(dbms_xplan.display_cursor('5rygsj4dbw6jt',null));
    select * from table(dbms_xplan.display_cursor('fsbqktj5vw6n9',null));
    select * from table(dbms_xplan.display_cursor('6q42j0018w7t8',null));
    select * from table(dbms_xplan.display_cursor('a5mmhrrnpwjsc',null));
    select * from table(dbms_xplan.display_cursor('3c1kubcdjnppq',null));
    select * from table(dbms_xplan.display_cursor('3c1kubcdjnppq',null));
    select * from table(dbms_xplan.display_cursor('9gkq7rruycsjp',null));
    select * from table(dbms_xplan.display_cursor('f0wj261bm8snd',null));
    select * from table(dbms_xplan.display_cursor('ab3swhv5g138y',null));
    select * from table(dbms_xplan.display_cursor('6vgvyh4xw9c5g',null));
    select * from table(dbms_xplan.display_cursor('ak5crjygnpk60',null));
    select * from table(dbms_xplan.display_cursor('9p6bq1v54k13j',null));
    select * from table(dbms_xplan.display_cursor('19x1189chq3xd',null));
    select * from table(dbms_xplan.display_cursor('7sx5p1ug5ag12',null));
    select * from table(dbms_xplan.display_cursor('730vdzhng6m6g',null));
    select * from table(dbms_xplan.display_cursor('730vdzhng6m6g',null));
    select * from table(dbms_xplan.display_cursor('0v3dvmc22qnam',null));
    select * from table(dbms_xplan.display_cursor('0v3dvmc22qnam',null));
    select * from table(dbms_xplan.display_cursor('a1zv6wju3ftgv',null));
    select * from table(dbms_xplan.display_cursor('7ng34ruy5awxq',null));
    select * from table(dbms_xplan.display_cursor('7ng34ruy5awxq',null));
    select * from table(dbms_xplan.display_cursor('b2gnxm5z6r51n',null));
    select * from table(dbms_xplan.display_cursor('b2gnxm5z6r51n',null));
    select * from table(dbms_xplan.display_cursor('g4gp07gt2z920',null));
    select * from table(dbms_xplan.display_cursor('1gu8t96d0bdmu',null));
    select * from table(dbms_xplan.display_cursor('g00cj285jmgsw',null));
    select * from table(dbms_xplan.display_cursor('g00cj285jmgsw',null));
    select * from table(dbms_xplan.display_cursor('g00cj285jmgsw',null));
    select * from table(dbms_xplan.display_cursor('bn4b3vjw2mj3u',null));
    select * from table(dbms_xplan.display_cursor('38243c4tqrkxm',null));
    select * from table(dbms_xplan.display_cursor('2abjfnvy5rkyg',null));
    select * from table(dbms_xplan.display_cursor('350f5yrnnmshs',null));
    select * from table(dbms_xplan.display_cursor('350f5yrnnmshs',null));
    select * from table(dbms_xplan.display_cursor('3s1yukp05bzg6',null));
    select * from table(dbms_xplan.display_cursor('3s1yukp05bzg6',null));
    select * from table(dbms_xplan.display_cursor('1tgukkrqj3zhw',null));
    exit
    
    PL/SQL procedure successfully completed.
    

    Edited by: P. Forstmann March 20, 2013 19:06

    Edited by: P. Forstmann March 20, 2013 19:33

Maybe you are looking for