Function table in oracle

Hi all

I am using Oracle 11g

I want to know in order to learn

What is the CURSOR in the function table.

What is its usefulness

Can someone explain to me.

SELECT x.*

(TABLE (package1.function1)

CURSOR (SELECT

t.*

OF test1 t))) x

Thank you

What is the CURSOR in the function table.

What is its usefulness

Can someone explain to me.

SELECT x.*

(TABLE (package1.function1)

CURSOR (SELECT

t.*

OF test1 t))) x

This slider is NOT 'in the function table. It is in the call to YOUR function named "packagae1.function1" and the function returns a collection. If it is the result of the collection of YOUR function call which is 'in the function table.

Your probable function takes a REF CURSOR as a parameter, so the code above uses the CURSOR operator to create a cursor from a subquery.

Your function then returns a collection and SCOREBOARD operator is used to make this collection available in SQL.

See FUNCTIONS TABLE in the Oracle documentation. A simple search for 'oracle 11g table function' returns the Oracle doc as the FIRST result listed:

http://docs.Oracle.com/CD/B28359_01/AppDev.111/b28425/pipe_paral_tbl.htm

This chapter describes the functions of table

. . .

Overview of the functions of table

Table functions are producing a set of lines (a nested table or a varray) that can be queried as a physical database table. You use a function table as the name of a database table, in the FROM clause of a query.

A table function can take a set of input lines. A parameter of the input collection can be of a collection type or a REF CURSOR .

. . .

Look at the examples 5-13 and 13-6, because they show the code for your EXACT example:

http://docs.Oracle.com/CD/B28359_01/AppDev.111/b28425/pipe_paral_tbl.htm#CIHEGADE

. . .

Example 13-6 How to use a function Table in pipeline with REF CURSOR Arguments

SELECT * FROM TABLE(StockPivot(CURSOR(SELECT * FROM StockTable)));

In the previous query, the function table in pipeline StockPivot retrieves the lines of the CURSOR subquery SELECT * FROM StockTable , performs the transformation and channels the results to the user in the form of table. The function produces two lines of output for each input line (items in the collection).

Note that when a CURSOR subquery went from SQL for a REF CURSOR argument of function as in the previous example, the referenced cursor is already open when the function begins to run.

As the doc example, as in your example, a subquery of CURSOR to create a cursor to be used as a function parameter. Example 13 - 5 has the actual code for the function.

The documentation is your FRY - don't be afraid to use it.

If you try to learn something a good question to ask on the forums is: where can I get more information about the functions of the table (or other topic).

Then, we can direct you to the Oracle documentation that covers this topic.

Tags: Database

Similar Questions

  • RETURN type of function table

    Hello

    I read conflicting information about the return type that has a table function must or may use.

    First, I am a student of a book that says:

    Function in pipeline returns the data types:

    The main constraint for the pipeline functions, it is the return type must be a collection type autonomous which can be used in SQL - i.e. a VARRAY or table nested.

    and then in the next sentence...

    More precisely a pipeline function can return the following:

    A stand-alone nested table or VARRAY, defined at the schema level.

    A nested table or VARRAY that has been declared in a package type.

    This seems to go against the first quoted sentence.

    Now, before reading the above text I had done just my own test to see if a packed type would work because I thought I had read somewhere that it would not, and he does not (the test code and this output is at the end of this question). When I arrived in the text above, after my test, so I was naturally confused.

    So, I'm going to PL/SQL reference that says:

    RETURN data type

    The data type of the value returned by a function table in pipeline must be a type collection defined either at the level of schema or within a package (therefore, it cannot be a type of associative array).

    I tried to call a function that returns a collection of VARRAY type packaged in both SQL and PL/SQL (of course below is SQL all in any case) and no work.

    Now I'm wondering what is a TABLE function must use a schema type and a function table in pipeline can use a packaged type?  I see that I created and called a function table but examples of Oracle see the creation and use of a function table in pipeline.

    Edit: I should add that I read the following sentence in the SF book on p609 in * table functions: "this type of nested table must be defined as an element of level diagram, because the SQL engine must be able to resolve a reference to a collection of this kind."

    So that it begins to resemble table functions should return a schema type and pipelined table functions, perhaps because that they don't in fact return a collection, rather they return (RowSource) content, can use the schema types or types of packages. Is this correct?

    Can someone clarify this for me please?

    Thank you in advance,

    J

    CREATE OR REPLACE PACKAGE PKGP28M

    VAT-type is varray (5) number;

    END;

    /

    DISPLAY ERRORS

    create or replace type VAT is varray (5) number;

    /

    display errors

    create or replace function tabfunc1 return pkgp28m.vat as

    numtab pkgp28m.vat:=pkgp28m.vat();

    Start

    numtab.extend (5);

    because loop me in 1.5

    numtab (i): = trunc (dbms_random. Value (1.5));

    end loop;

    Return numtab;

    end;

    /

    display errors

    create or replace function tabfunc2 as return VAT

    numtab vat:=vat().

    Start

    numtab.extend (5);

    because loop me in 1.5

    numtab (i): = trunc (dbms_random. Value (1.5));

    end loop;

    Return numtab;

    end;

    /

    display errors

    exec dbms_output.put_line (' call tabfunc1 (returns the packaged type) :');)

    Select * from table (tabfunc1)

    /

    exec dbms_output.put_line (' call tabfunc2 (returns the type of schema) :');)

    Select * from table (tabfunc2)

    /

    declare

    RC sys_refcursor;

    number of v;

    Start

    dbms_output.put_line (' in anonymous block1 - open rc to select in the table (tabfunc1) (returns the packaged type) :');)

    Open rc to select table column_value (tabfunc1);

    loop

    extract the rc in v;

    When the output rc % notfound;

    dbms_output.put_line (' > ' | to_char (v));

    end loop;

    close the rc;

    end;

    /

    declare

    RC sys_refcursor;

    number of v;

    Start

    dbms_output.put_line (' in anonymous block2 - open rc to select in the table (tabfunc2) (returns the type of schema) :');)

    Open rc to select table column_value (tabfunc2);

    loop

    extract the rc in v;

    When the output rc % notfound;

    dbms_output.put_line (' > ' | to_char (v));

    end loop;

    close the rc;

    end;

    /

    Scott@ORCL > @C:\Users\J\Documents\SQL\test29.sql

    Package created.

    No errors.

    Type of creation.

    No errors.

    The function is created.

    No errors.

    The function is created.

    No errors.

    the call of tabfunc1 (returns the packaged type):

    PL/SQL procedure successfully completed.

    Select * from table (tabfunc1)

    *

    ERROR on line 1:

    ORA-00902: invalid data type

    the call of tabfunc2 (returns the type of schema):

    PL/SQL procedure successfully completed.

    COLUMN_VALUE

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

    1

    4

    1

    1

    3

    In anonymous block1 - open rc to select in the table (tabfunc1) (returns the packaged type):

    declare

    *

    ERROR on line 1:

    ORA-00902: invalid data type

    ORA-06512: at line 6

    In anonymous block2 - open rc to select in the table (tabfunc2) (returns the type of schema):

    > 1

    > 2

    > 4

    > 2

    > 3

    PL/SQL procedure successfully completed.

    Post edited by: Jason_942375

    But the compilation of the PIPELINED WILL CREATE the schematic function types automatically. And the TABLE function, applied to the PIPELINED function, use these types of hidden patterns.

  • How do I get the output of a function table

    Hi all

    Kindly share your idea.


    I need the outputs of a function table only.

    Database version: oracle 10.1.0.2.0

    login_details:

    login_id branch_code

    admin 1
    Admin1 2
    Test 1
    user 1

    I need output for the query function below.

    Select login_id from login_details where branch_code = '1';

    If I create a function:


    FUNCTION to CREATE or REPLACE fn_get_login (pvBranch varchar2)
    IS BACK SYS_REFCURSOR
    REF_TEST SYS_REFCURSOR;
    BEGIN
    OPEN FOR REF_TEST
    Login_id SELECT FROM login_details WHERE branch_code = pvBranch;
    RETURN REF_TEST;

    END;
    /


    Select * from login_master where login_id in (select fn_get_login('01') from double);


    and get

    ORA-00932: inconsistent data types: expected - got CURSER

    Edited by: 887268 October 8, 2012 12:25

    You cannot use a Ref cursor in a table, because it isn't a result set of data, it's just a pointer to a request for enforcement.

    {: identifier of the thread = 886365}

    A ref cursor must be used if you want to refer the request to an external application.

    Transfer data back to a function is to use a pipeline for example function

    SQL> CREATE OR REPLACE TYPE num_descript AS OBJECT(num number, descript varchar2(30))
      2  /
    
    Type created.
    
    SQL>
    SQL> CREATE OR REPLACE TYPE tbl_num_descript AS TABLE OF num_descript
      2  /
    
    Type created.
    
    SQL>
    SQL>
    SQL> CREATE OR REPLACE PACKAGE reftest AS
      2    FUNCTION pipedata(p_choice number) RETURN tbl_num_descript PIPELINED;
      3  END;
      4  /
    
    Package created.
    
    SQL>
    SQL> CREATE OR REPLACE PACKAGE BODY reftest AS
      2    FUNCTION pipedata(p_choice number) RETURN tbl_num_descript PIPELINED IS
      3      v_obj num_descript := num_descript(NULL,NULL);
      4      v_rc  sys_refcursor;
      5    BEGIN
      6      IF p_choice = 1 THEN
      7        OPEN v_rc FOR SELECT empno as num, ename as descript FROM emp;
      8      ELSIF p_choice = 2 THEN
      9        OPEN v_rc FOR SELECT deptno as num, dname as descript FROM dept;
     10      END IF;
     11      LOOP
     12        FETCH v_rc INTO v_obj.num, v_obj.descript;
     13        EXIT WHEN v_rc%NOTFOUND;
     14        PIPE ROW(v_obj);
     15      END LOOP;
     16      CLOSE v_rc;
     17      RETURN;
     18    END;
     19  END;
     20  /
    
    Package body created.
    
    SQL> select * from table(reftest.pipedata(1));
    
           NUM DESCRIPT
    ---------- ------------------------------
          7369 SMITH
          7499 ALLEN
          7521 WARD
          7566 JONES
          7654 MARTIN
          7698 BLAKE
          7782 CLARK
          7788 SCOTT
          7839 KING
          7844 TURNER
          7876 ADAMS
          7900 JAMES
          7902 FORD
          7934 MILLER
    
    14 rows selected.
    
    SQL> select * from table(reftest.pipedata(2));
    
           NUM DESCRIPT
    ---------- ------------------------------
            10 ACCOUNTING
            20 RESEARCH
            30 SALES
            40 OPERATIONS
    
    SQL>
    

    but of course, it is wise to just use pure SQL that in order to mix the PL/SQL in queries in the form of best performance features.

    Perhaps explain what problem you are trying to solve when trying to use a function, and we can advise you on the best options.

  • How can I call a function table in pipeline via DB link?

    I am using a function table in pipeline defined in a remote DB (DB_A) of my DB in local (DB_B) via a link DB (DB_A_REMOTE).

    The function table in pipeline is defined in a package with all the specifications of type he needs and works very well when she is called locally but when called it remotely fails

    Here is an example configuration in DB_A:
    connect scott/tiger
    create or replace
    package pkg as
      type rec is record (
        dte date
      );
      type rec_set is table of rec;
      
      function dts(p_eff_date date) return rec_set pipelined;
      function dt(p_eff_date date) return date;
    end;
    /
    create or replace
    PACKAGE BODY pkg AS
    
      function dts(p_eff_date date) return rec_set pipelined AS
        r rec;
      BEGIN
        r.dte := p_eff_date;
        pipe row(r);
        r.dte := r.dte+1;
        pipe row(r);
        RETURN;
      END dts;
    
      function dt(p_eff_date date) return date as
      begin
        return p_eff_date;
      end;
    
    END pkg;
    /
    In DB_B, I have the following configuration:
    create database link DB_A_REMOTE connect to Scott identified by tiger using 'DB_A';
    create or replace synonym RPKG for PKG@DB_A_REMOTE;
    In DB_A, I can access the two PKG functions very well
    SQL> select pkg.dt(sysdate) from dual
    DJ.DT(SYSDATE)       
    ----------------------
    21-SEP-2012 11:26:31   
    
    SQL> select * from table(pkg.dts(sysdate))
    DTE                  
    ----------------------
    21-SEP-2012 11:26:31   
    22-SEP-2012 11:26:31   
    23-SEP-2012 11:26:31   
    24-SEP-2012 11:26:31   
    However, in DB_B the I get the following:
    SQL> select rpkg.dt(sysdate) from dual
    RPKG.DT(SYSDATE)     
    ----------------------
    21-SEP-2012 11:29:05   
    
    SQL> select * from table(rpkg.dts(sysdate))
    
    Error starting at line 2 in command:
    select * from table(rpkg.dts(sysdate))
    Error at Command Line:2 Column:20
    Error report:
    SQL Error: ORA-06553: PLS-752: Table function DTS is in an inconsistent state.
    06553. 00000 -  "PLS-%s: %s"
    *Cause:    
    *Action:
    selection rpkg.dt shows I can get to the remote package and run functions in it, but the second line is where my problem.

    Why the function table in an inconsistent state and how can I fix this problem so that it will work in all of the linlk database?

    Published by: Sentinel on September 21, 2012 11:35

    Go! You have posted more than 1,000 times and know that you must provide your Oracle version 4-digit.
    >
    Why the function table in an inconsistent state and how can I fix this problem so that it will work in all of the linlk database?
    >
    You can't - it is not supported.

    See the note under the PIPELINED clause in the declaration section of the definition of the doc of PL/SQL and function
    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e25519/function.htm
    >
    Note:

    You cannot run a function table in pipeline over a database link. The reason is that the return type of a function table in pipeline is a SQL type defined by the user, which can be used in a single database (as explained in the Guide of the Oracle object-relational database developer). Although the return type of a function table in pipeline may appear as a PL/SQL type, the database actually converts this PL/SQL type to a type defined by the corresponding SQL user.
    >
    Your code using PL/SQL types for these types are implicitly converted to the SQL type needed to access the service using SQL. But the SQL types have an OID (object ID) which is not recognized on the other server so that the other server is unable to create the appropriate type.

    If you click on the link provided to the other doc in this note, you will see that even though you can create a type and specify an OID you still won't be able to use it as you wish.
    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e11822/adobjbas.htm#ADOBJ7083
    >
    Restriction on the use of Types defined by the user with a remote database

    Objects or user-defined types (specifically, types declared with a SQL CREATE TYPE statement, as opposed to types declared in a PL/SQL package) are currently only useful in a single database. Oracle database limits the use of a link of database as follows:

    Unable to connect to a remote database for select, insert, or update a type defined by the user or a REF object on a remote table.

    You can use the CREATE TYPE statement with the Optional keyword OID to create an object identifier specified by the user (OID) that allows an object type for use in multiple databases. See the discussion on the attribution of an OID for a type of object in Oracle Database Data Cartridge Developer's Guide.

    You cannot use the links from the database of the PL/SQL code to declare a local variable of a type defined by the remote user.

    You cannot pass an argument value or return of type user defined in a PL/SQL remote procedure call.

  • Question of functions table

    Hello people,

    I just want to know why I can't use indexed tables in the table as return type functions. For example when I write "pls_integer index" at the end of the holder_t code, table function does not work. I would like to know why? What are the differences?

    create or replace
    package my_pack
    is
    type holder_t is table of Hello % rowtype;
    / * When I type this table like this, type holder_t is table of the Hello % rowtype index by pls_integer; table function does not work * /.
    type ref_cur_t is ref cursor
    Hello return % rowtype;
    end;

    create or replace
    function pipeline (SLEEP my_pack.ref_cur_t)
    parallel_enable my_pack.holder_t return pipeline (partition SLEEP by any)
    is
    my_row Hello % rowtype;
    holder hello_o: = hello_o (null, null);
    Start

    loop
    When the exit SLEEP % notfound;
    extract SLEEP them in my_row;
    Holder.a: = my_row.a;
    Holder.b: = my_row.b;
    course of action (my_row);
    end loop;
    Close SLEEP;

    return;

    end;



    Thank you.

    Polat says:
    OK, but what are the differences with the type holder_t is table of Hello % rowtype and type holder_t table with % rowtype index by pls_integer Hello? I mean both of them are table, but if I then use as return type it gives an error, I am trying to understand this?

    Difference is

    type holder_t is table of hello%rowtype index by pls_integer;
    

    Is an associative array. Similar to a hash table. This is only one type of PL/SQL, SQL cannot be used.

    This

    type holder_t is table of hello%rowtype;
    

    Is a nested table, similar to a set (or bag). This can be used in SQL, too.

    Looking at the docs for functions in pipeline, type that see you back:

    The data type of the value returned by a function table in pipeline must be a collection type defined at the schema or within a packet level (therefore, it cannot be a type of associative array).
    The elements of the collection type should be given SQL type, not data types supported only by the PL/SQL (for example PLS_INTEGER and BOOLEAN).

    Looking for all ther son you have on this topic, you should certainly read and try under rest three different collection types offered:
    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e25519/composites.htm#LNPLS00501

    Concerning
    Peter

  • Function table in pipeline and the key-preservation - (ORA-01779)

    Hey oraclers,

    If I had to use a function table in the pipeline to cover complex application logic, I rarely update a subset of...

    (simplified example)
    create type derived_t as object ( key integer, value varchar2(100) );
    create type derived_tc as table of result_t;
    
    create or replace function new_derivations( p_param varchar2 ) return derived_tc pipelined
    is
      l_derived derived_t;
    begin
     
      loop
        /* do stuff here */
        .....
        pipe row( l_derived );
      end loop;
    return;
    end;
    /
    
    create table derivations
    as 
    ( 
      key integer primary key,
      value varchar2(100)
    );
    
    
    insert into derivations select t.* from table( cast( new_derivations( 'test' ) as derived_tc ) ) t;
    But when I try...
    update ( 
       select d.rowid,
                d.key,
                d.value,
                t.value new_value
       from   derivations d,
                table( cast( new_derivations( 'test' ) as derived_tc ) ) t
       where d.key = t.key 
       and     d.key between :low_key and :high_key
    )
      set value = new_value;
    I get ORA-01779: cannot modify a column that is mapped to a table not preserved key...

    OK... so reading around us need to be able to tell Oracle that each row in the result set view is preserved key - the 'key' of derivations from the table column and the column "key" to the result of the function in the pipeline are unique (and compatible).

    Is it possible to hint Oracle (11.2.0.2.0 on Windows) to achieve this?

    Thanks muchly,.

    Lachlan Pitts

    You can rewrite this kind of update in a MERGE statement statement, which I think does not suffer the problem you are experiencing:

    merge into derivations d
    using (select t.key, t.value new_value from table( cast( new_derivations( 'test' ) as derived_tc ) ) t) s
    on (d.key = s.key and d.key between :low_key and :high_key)
    when matched then update set d.value = t.new_value
    

    (Not checked for syntax errors)

    You can also watch this:
    http://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:760068400346785797

    Published by: Toon Koppelaars February 8, 2011 05:40

  • What are the different types of tables in oracle - please help

    I want to know the different types of tables of orcle... Please help me

    There are seven types of tables in Oracle.

    1. organized bunch of tables
    2 index organized tables
    3 clustered index tables
    4 hash clustered tables
    5. nested tables
    6. global temporary tables
    7 tables of objects
    Source: http://www.adp-gmbh.ch/ora/concepts/tables.html

    But if you ask the types of tables in sense of the uses they are n types:
    1 step tables
    2. operational tables
    3. functional tables
    4. layout tables
    5 archive tables
    6. other tables
    Source: http://www.databasejournal.com/features/oracle/article.php/3616476/Types-of-Tables-in-Oracle.htm

    And of course, the full details can be found in the documentation.

    HTH
    Girish Sharma

  • is that we can transform a GML table with oracle 11g?

    I have a project with GML and this is the first time that I work with.
    I just need to know if I can transform a normal table with oracle of GML.

    I found that we can do this with xml using the simple features sql example:

    SQL:
    SELECT XMLElement (name 'Department',
    XMLAttributes (deptno),
    XMLAgg (XMLElement (name"employee", ename))) .getStringVal () as a RESULT
    FROM scott.emp
    GROUP BY deptno;

    result:
    < Department deptno '34' = >
    ename < employee > < / employee >
    < / Department >

    < Department deptno = "35" >
    ename1 < employee > < / employee >
    < / Department >...

    We can do something like this with oracle11g for GML instead of XML (when we have spatial data).

    I hope that you have the answer or a reference that can help.
    Thank you
    Best regards

    Hi, -.

    We have the following conversion functions of GML and KML to/from SDO_GEOMETRY.
    We both support GML2 and GML 3.1.1:

    In 11.1.0.7, you will find the following functions:

    SDO_UTIL. FROM_GML311GEOMETRY: Converts a fragment of geography markup language (GML 3.1.1) a spatial geometry.
    SDO_UTIL. FROM_GMLGEOMETRY: Converts a fragment of geography markup language (GML 2.0) a spatial geometry.
    SDO_UTIL. FROM_KMLGEOMETRY: Converts a KML (Keyhole Markup Language) of a Spatial geometry object document.

    SDO_UTIL. TO_GML311GEOMETRY: Converts an object of spatial geometry to a fragment of language (GML version 3.1.1) geography markup based on the geometry types defined in the schema geometry.xsd Open GIS Consortium document.
    SDO_UTIL. TO_GMLGEOMETRY: Converts an object of spatial geometry a geography markup language (GML 2.0) fragment based on the geometry types defined in the schema geometry.xsd Open GIS Consortium document.
    SDO_UTIL. TO_KMLGEOMETRY: Converts a Spatial geometry object to a KML (Keyhole Markup Language) document.

    See also User Guide Pro Oracle Spatial and Oracle Spatial for book of 11g Oracle database for more details and examples.

    Please let us know if you have any other questions. We will be happy to help you.

    I hope this helps.
    Best regards
    Baris

  • Mapping of 12 ODI is a failure loading the table to the table in oracle DB

    Hi Experts,

    I'm starting to ODI, attempts to load data from the Table to the Table in Oracle DB. Source table and target table are in the same PB in different schema

    I created my own work, also agent and master repository.

    Started with the agent, and I could see the status as Planner started for referential work * on Agent OracleDIAgent1.

    Created the agent in topology and successfully tested.

    Created data and connections physical schema of the source and target servers, Test connection is successful.

    Created the context and logical schema defined for the source and the target.

    Mapped to the corresponding physical schema context.

    Diagram logical and physical mapping is accomplished in the context.

    Created for source and target models, able to view the data in the source model.

    Created a simple map and put in source and target component context.

    LKM selected as LKM SQL for SQL

    Select IKM as IKM Oracle Insert.GLOBAL

    After execution, the mapping is a failure with the error below

    Drop table work - LKM SQL for SQL

    ODI-1222: start failure on agent edge internal: logical schema * is not found in the main repository.

    Create the table work - LKM SQL for SQL

    ODI-1222: start failure on agent edge internal: logical schema * is not found in the main repository.

    ODI-1222: start failure on agent edge internal: logical schema * is not found in the main repository.

    at oracle.odi.runtime.agent.execution.AbstractSessionTask.getSrcDataServer(AbstractSessionTask.java:1646)

    at oracle.odi.runtime.agent.execution.interpreter.SessionTaskCodeInterpreter.codeInterpretation(SessionTaskCodeInterpreter.java:132)

    at oracle.odi.runtime.agent.execution.interpreter.SessionTaskCodeInterpreter.codeInterpretation(SessionTaskCodeInterpreter.java:80)

    at oracle.odi.runtime.agent.execution.SessionTask.createTaskLog(SessionTask.java:324)

    at oracle.odi.runtime.agent.execution.AbstractSessionTask.execute(AbstractSessionTask.java:821)

    to oracle.odi.runtime.agent.execution.SessionExecutor$ SerialTrain.runTasks (SessionExecutor.java:2024)

    at oracle.odi.runtime.agent.execution.SessionExecutor.executeSession(SessionExecutor.java:562)

    to oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$ 1.doAction(TaskExecutorAgentRequestProcessor.java:718)

    to oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor$ 1.doAction(TaskExecutorAgentRequestProcessor.java:611)

    at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:203)

    at oracle.odi.runtime.agent.processor.TaskExecutorAgentRequestProcessor.doProcessStartAgentTask(TaskExecutorAgentRequestProcessor.java:800)

    to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$ 1400 (StartSessRequestProcessor.java:74)

    to oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$ StartSessTask.doExecute (StartSessRequestProcessor.java:702)

    at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:180)

    to oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$ 2.run(DefaultAgentTaskExecutor.java:108)

    at java.lang.Thread.run(Thread.java:722)

    Please help me with the problem above,

    Thanks in advance.

    Kind regards

    Srikanth

    Hi Srikanth,

    It is usually better to create a separate scheme for the scheme of work, but you can keep the data and schema of work even. Also in your error log, the error should now be to the right of the IKM? No LKM. Try changing the logical schema name and see if it works.

    Thank you

    Ajay

  • function table

    Hi experts


    I want to know how to create a table function that returns the Recordset (empno, ename, sal + comm) of the emp table

    I know that this can be done with simple SQL, but I want to learn to write the table function.

    And how to call this function from another sql table.

    Please help me...

    The sample data is data.

    EMPNO, ENAME, JOB HIREDATE DEPTNO COMM SAL MGR

    7369 SMITH COMMITTED 7902 17 DECEMBER 80 800 100 20

    7499 ALLEN 7698 1600 20 FEBRUARY SALESMAN 81 300 30

    7521 WARD 7698 1250 22 FEBRUARY SALESMAN 81 500 30

    Table function returns a collection of lines (a nested table or varray). You can choose from this collection, as if it were a database table by calling the function table inside of the TABLE clause in a SELECT statement. However, the use of the results of the function table based on table producing the entire collection (and remember, the collection is stored in memory) and then sending it only to the SQL statement. Table function in pipeline using PIPE ROW to route the data to the SQL statement as part of collection is produced. This SQL statement way working on this element table in function transformation pipeline while working to produce the next item in the collection. This improves performance and reduces the memory usage which can be even more important when the function produces collections of great footpring. RTFM in pipeline and functions using parallel Tableanyway.

    SY.

  • How can I add data file to an existing table on Oracle RAC ASM with no OMF? Thank you!

    How can I add data file to an existing table on Oracle RAC ASM with no OMF? Thank you!

    Hello

    So I guess you have some files in ASM, see your first existing file structure

    Select file_name

    from dba_data_files;

    and to add to an existing table, the example below (even if you're better sticking with OMFs!)-is that what you are looking for?

    SQL > create tablespace TEST1

    2 datafile '+ DATA' size 1 M;

    Created tablespace.

    SQL > select file_name in dba_data_files;

    FILE_NAME

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

    +Data/orcl2/datafile/users.259.859820983

    +Data/orcl2/datafile/undotbs1.258.859820983

    +Data/orcl2/datafile/SYSAUX.257.859820983

    +Data/orcl2/datafile/system.256.859820981

    +Data/orcl2/datafile/example.269.859821049

    +Data/orcl2/datafile/Test1.271.859843053

    6 selected lines.

    SQL > alter tablespace TEST1

    2 Add datafile ' + DATA / mynewfile01.dbf ' size 2 m;

    Tablespace altered.

    SQL > select file_name in dba_data_files;

    FILE_NAME

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

    +Data/orcl2/datafile/users.259.859820983

    +Data/orcl2/datafile/undotbs1.258.859820983

    +Data/orcl2/datafile/SYSAUX.257.859820983

    +Data/orcl2/datafile/system.256.859820981

    +Data/orcl2/datafile/example.269.859821049

    +Data/orcl2/datafile/Test1.271.859843053

    + DATA / mynewfile01.dbf

    Thank you

  • Ongoing replication of the selected tables from Oracle to SQL Server

    Hi all

    How can we replicate selected tables to Oracle 11 g for SQL Server 2008/2012?

    Is GoldenGate the only option

    No matter who did it before or have the steps to do it?

    Thank you

    Define "replicate".

    If you have no budget, you can open a connection directly from SQL Server to Oracle, or vice versa. In Oracle, they are called links DB; in SQL Server, they are called "linked servers".

    Datanamic also have tools that claim to do the cross-DB replication. I have no experience with them and is not an endorsement - I know they exist.

  • How to model a view based on a function table

    Hello

    I want to model a view in SQL Developer Data Modeler which is based on a function of painting as:

    table (function (a, b))

    When the function is a function table in pipeline. How is that possible?

    DM 3.3.0.734 SQL version

    Best regards

    Joop

    Hello

    In the Properties dialog box of the view that is displayed when you create the view, you can select the Report Builder queries (on the general page) button.

    In the query designer, you can enter the query text in the box above the buttons OK and apply, cancel, for example
    SELECT * FROM TABLE (FUNCTION (a, b))

    David

  • I want to know when we issue statement truncate table in oracle.

    I want to know when we issue statement truncate table in oracle. No newspaper will be write in the redo log. But we can recover data using flashback or SNA. I want to know where the actually truncate table statement log is stored in the oracle database. Please explain to me in detail step by step.

    >
    I understand your SNA. But I want to know where the truncate statement stored log. But in the redo log, no entry for truncate.but I want to go which connect there is no market value back...
    >
    If you are still wondering after getting the answer so you don't "understand".

    You have received the reply above. Archive of flashback stores data.

    See the link provided above to CREATE an ARCHIVE of FLASHBACK in the doc of SQL language
    http://docs.Oracle.com/CD/E11882_01/server.112/e26088/statements_5010.htm
    >
    TABLESPACE clause

    Specify the table space where the data archived for this flashback data archive referring to be stored. You can specify that a tablespace with this clause. However, you can then add tablespaces to archive flashback with a statement ALTER FLASHBACK ARCHIVE database.
    >
    The data is moved to storage of archives and restored from there when you query for archive flashback.

  • Function PIPELINE in oracle

    Hello

    Can any body shows when to use the PIPELINE function in simple words.


    Thank you
    Vinod

    910575 wrote:

    Can any body shows when to use the PIPELINE function in simple words.

    Wrong question.

    Good question - WHAT is a function table of pipeline.

    If you understand WHAT it is, you will be able to determine WHEN to use it.

    So did you read the documentation? Try coding your own function of pipeline? Do you understand what it is and how it works?

Maybe you are looking for

  • TV with not properly

    Hello I bought men behave Baldy season 6 quite awhile and recently purchases seasons 1-5. I expected to see the seasons grouped much like all the other shows that I bought through iTunes, but the season 6 of MBB is sitting out there on its own, while

  • Problems with Outlook Express (address book, mail open, etc.)

    Hi, I have a strange problem with my outlook express. The program opens ok, it synchronize the e-mail with the servers and so on. If you click on an email in the upper part of the window you can see the content below.Now, this is my problem, I can no

  • Vista 64 bit won't in mode 'sleep'

    Hi all Just bought a new desktop with Vista 64 bit computer.  He won't go in mode 'sleep' and is therefore always on.  I tried to contact dell technical support and they said it was a problem of Microsoft/Vista about the transformers containing more

  • Microsoft mouse 3000 - cursor wont move it please help

    original title: I have a mouse microsoft 3000 green light is on ive fact battery but the cursor doesn't move it please help I have a microsoft mouse 3000 it simply stopped working Ive changed the battery, the green light is on the Red usb port is on

  • Frustration of fresh paint - when I click the button cancel the entire image is annihilated

    Original title: Frustration of fresh paint I am an older user and love the app, but my work is wiped out all of a sudden. I'll work on an image for days and save after each use, then for some reason, when I click the button cancel that the entire ima