CREATE A TARGET TABLE

Hi all

Can we create a target in ODI table as as create us the definition of the target in Informatica. In the affirmative, please let me know as I am new to ODI.
Also can you please give me a simple example on the variable works.

Thank you
VERIFIED BY VISA

Hi VPV,.

How are you?

Yes, its possible to create table thro interface target running.

In all the IKM (to flow tab), you will find CREATE_TARG_TABLE, if you decide that Yes it creates the table in the back-end.

For variables, see Note: 471564.1 in metalink.

Thank you
G

Tags: Business Intelligence

Similar Questions

  • Create a target table by using the model of the ODI

    Hi all

    I am new to ODI. I'm try export table RDBMS for source RDBMS table at target.

    If we create the structure of the target in the trg schema table or we can create using the model fit obi by selecting new data store.

    Owb loading target tables is created and the data will be loaded.

    Pls help me about this.

    Thanks in advance.

    Hello
    You can create it in the two ways.if you create using ODI data store, you must select Create table option target in flow during loading of the target.

  • automatically create source and target tables

    Hello
    I need to convert many flat COBOL tables (each table has a file description and a data file) to the Oracle Tables.
    I just create (using the 'flat file to oracle table' online documentation) my first project and it works.

    It is possible to automate the operation without manually create each single source table and the target table?
    Where can I find a manual?

    Thanks to advice
    Fabio

    Fabio,

    I do not see how ODI could do this process automatically except by accessing the repository, but it won't work for repositories of executions.

    I suggest do you it manually...

    On the stpe update, if you need not change the revenge for SQL append coming to do inserts.

    Do not forget to put the IKM 'Flow Control' or 'no' which generates fewer steps and really increase performance...

    No sense?

    Cezar Santos
    [www.odiexperts.com]

  • ODI 12 c: do I have to reimport the target tables after that I did some clues on them

    Hello

    I created a map after import target tables in my ODI 12 C studio. The mapping is complete and it works without any errors. Now I intend to create some clues that I have an obligation to report. SO, I have to reimport these after creating indexes.

    Thank you

    SM

    Hello

    Here's the thing. The indexes that you created, if you plan to use as a unique index, or as your key to updating ODI you can go ahead and add the template manually in or hit the table again. However, if these indices are purely to make your report more quickly and will have no impact on you data loading then it is pointless to ODI. In the future when you make changes to the table and refresh it in ODI indexes will be added automatically.

    Thank you

    Ajay

  • A target table is in charge of two different sources but the same columns, but a source is one database and another in a flat file.

    We all hope you are doing well.

    I have a business problem to implement in ODI 11 G. It's here. I'm trying to load a target table from two sources that have the same column names. But a source is to the file format and the other is in the Oracle database.

    That's what I think I'll create two mappings in the same interface by using the Union between the sources. But I don't know how the interface would connect to different logical architecture to connect to two different sources.

    Thank you

    SM

    You are on the right track, all in a single interface. Follow these steps

    (1) pull model of your data in the designer of the source file and your table model target to the target pane.

    (2) all relevant columns map

    (3) in the source designer to create a new dataset and choose as the UNION join type (this will create a separate tab in the source designer pane)

    (4) select the new dataset tab in the source designer pane and pull your source oracle table data model in the designer of the source. All columns that are relevant to the target card

    (5) make sure that your staging location is set to a relational technology i.e. in this case the target would be an ideal candidate because it is where the ODI will organize the data from source two files and oracle and perform the UNION before loading to the target

    If you want to watch some pretty screenshots showing the steps above, take a look at http://odiexperts.com/11g-oracle-data-integrator-part-611g-union-minus-intersect/

  • How to MERGE when the target table contains invisible columns?

    Oracle running on Oracle Linux 6.4 12.1.0.2.0 database:

    During his studies of FUSION with invisible columns, I discovered that invisible columns in the target table cannot be read. Workaround seems to be

    MERGE INTO (SELECT <column list> FROM <target table>) AS <alias>
    

    However, the documentation does not seem to allow this. Here are the details.

    Test data

    > CREATE TABLE t_target(
      k1 NUMBER PRIMARY KEY,
      c1 NUMBER,
      i1 NUMBER invisible
    )
    
    table T_TARGET created.
    
    > INSERT INTO t_target (k1,c1,i1)
    SELECT 2, 2, 2 FROM dual
    UNION ALL
    SELECT 3, 3, 3 FROM dual
    UNION ALL
    SELECT 4, 4, 4 FROM dual
    
    3 rows inserted.
    
    > CREATE TABLE t_source(
      k1 NUMBER PRIMARY KEY,
      c1 NUMBER,
      i1 NUMBER invisible
    )
    table T_SOURCE created.
    
    > INSERT INTO t_source (k1,c1,i1)
    SELECT 1, 1, 1 FROM dual
    UNION ALL
    SELECT 2, 2, 9999 FROM dual
    UNION ALL
    SELECT 3, 3, 3 FROM dual
    
    3 rows inserted.
    

    First try

    Please note that I have a WHERE clause in the WHEN MATCHED clause. Its purpose is to avoid the update of a row when data are already correct. The WHERE clause is trying to read the invisible column of the target table.

    > MERGE INTO t_target o
    USING (
      SELECT k1, c1, i1 FROM t_source
    ) n
    ON (o.k1 = n.k1)
    WHEN MATCHED THEN UPDATE SET
      c1=n.c1, i1=n.i1
      WHERE 1 IN (
        decode(o.c1,n.c1,0,1),
        decode(o.i1,n.i1,0,1)
      )
    WHEN NOT MATCHED THEN INSERT
      (k1, c1, i1)
      VALUES(n.k1, n.c1, n.i1)
    ...
    Error at Command Line : 10 Column : 12
    Error report -
    SQL Error: ORA-00904: "O"."I1": invalid identifier
    

    As you can see, I put a subquery after the USING clause so that 'n.i1' would be 'visible', but this is not enough since the 'I1' column in the target table is always invisible.

    Second test

    > MERGE INTO (
      SELECT k1, c1, i1 FROM t_target
    ) o
    USING (
      SELECT k1, c1, i1 FROM t_source
    ) n
    ON (o.k1 = n.k1)
    WHEN MATCHED THEN UPDATE SET
      c1=n.c1, i1=n.i1
      WHERE 1 IN (
        decode(o.c1,n.c1,0,1),
        decode(o.i1,n.i1,0,1)
      )
    WHEN NOT MATCHED THEN INSERT
      (k1, c1, i1)
      VALUES(n.k1, n.c1, n.i1)
    
    2 rows merged.
    

    Here I used a subquery in the INTO clause thus, and it worked.

    Unfortunately, this does not seem to be admitted in the documentation: IN fact refers to a table or a view as schema objects.

    Description of merge.gif follows

    My question is:

    How can I refer to invisible columns in the target table without creating a new object? My workaround using a subquery solution seems to work very well, but can I recommend if it is not documented?

    Can I replace a "inline view" for a view and still be supported?

    During his studies of FUSION with invisible columns, I discovered that invisible columns in the target table cannot be read. Workaround seems to be

    However, the documentation does not seem to allow this. Here are the details.

    Here I used a subquery in the INTO clause thus, and it worked.

    Unfortunately, this does not seem to be admitted in the documentation: IN fact refers to a table or a view as schema objects.

    My question is:

    How can I refer to invisible columns in the target table without creating a new object? My workaround using a subquery solution seems to work very well, but can I recommend if it is not documented?

    Can I replace a "inline view" for a view and still be supported?

    But the documentation DO ALLOWS not only! You use a view - a view online and those that can be changed in a MERGE statement.

    All versions of the doc for FUSION since 9i specifically say this:

    INTO clause

    Use the INTO target clause to specify the table or view you are updating or inserting into. To merge the data in a view, the view must be updated. Please refer to the "Notes on the editable views" for more information.

    Here are the links for the doc. 9i, 10g, 11g and c 12, ALL OF THEM (the last three), except 9i have this EXACT clause above.

    SQL statements: INDICATED to ROLLBACK FALLS, 15 of 19

    http://docs.Oracle.com/CD/B19306_01/server.102/b14200/statements_9016.htm

    http://docs.Oracle.com/CD/B28359_01/server.111/b28286/statements_9016.htm

    https://docs.Oracle.com/database/121/SQLRF/statements_9016.htm

    9i doc does not have this specific quote in the INTO clause section, but it doesn't have that quote a little later:

    Limitation of the update of a view
    • You cannot specify DEFAULT when refreshing a view.
    • You cannot update a column referenced in the ON condition clause.
    merge_insert_clause

    The merge_insert_clause specifies the values to insert into the column of the target table, if the condition of the ON clause is false. If the insert clause is executed, then all insert triggers defined on the target table are activated.

    Restrictions on the merger in a view

    You cannot specify DEFAULT when refreshing a view.

    If your "workaround" isn't really a workaround solution. You SHOULD use an inline view if you need to reference a column "invisible" in the target table, since otherwise, these columns are INVISIBLE!

    My workaround using a subquery solution seems to work very well, but can I recommend if it is not documented?

    You can recomment it because IT IS documented.

  • help sql two queries toload target table

     
    create table table1 
        (code varchar2(10)
         ,mod_time date);
         
         insert into table1 values('2533',to_date('31-JUL-2012', 'DD-MON-YY'));
         insert into table1 values('2534',to_date('31-JUL-2012', 'DD-MON-YY'));
          insert into table1 values('2535',to_date('01-SEP-2012', 'DD-MON-YY'));
        
          create table table2
        (code varchar2(10)
         ,ID   NUMBER
         ,TYPE VARCHAR2(3)
         ,mod_time date);
         insert into table2 values('2533',1,'AB',to_date('01-SEP-2012', 'DD-MON-YY'));
         insert into table2 values('2534',1,'CD',to_date('01-SEP-2012', 'DD-MON-YY'));
         
         create table table3
         (ID   NUMBER
          ,mod_time date);
          insert into table3 values(1,to_date('01-SEP-2012', 'DD-MON-YY'));
          insert into table3 values(2,to_date('01-SEP-2012', 'DD-MON-YY'));
          
          create table target
          (code varchar2(10)
          ,ID   NUMBER
          ,TYPE VARCHAR2(3)
          ,table1_modtime date
          ,table2_modtime date
          ,table3_modtime date
          ,valid_till  date 
          ,valid_from  date 
          drop table target
          
          combine all the three tables where table1.mod_time<=31-jul-2012, table2.mod_time<=31-jul-2012,table3.mod_time<=31-jul-2012
          
          initial load to target load should be get the information from all the tables modtime<=31-jul-2012
          Need to have select query to get the below 1st load expected output
          valid_till defaults to to_date('31-DEC-2030', 'DD-MON-YY')
          valid_from defaults to to_date('01-01-1995', 'DD-MON-YY')
          
         1st load expected output
          code    id     type  table1_modtime   table2_modtime      table3.modtime  valid_from valid_till   
          2533                 31-JUL-2012                                                            01-01-1995  31-DEC-2030  
          2534                 31-JUL-2012                                                             01-01-1995   31-DEC-2030  
          -------------------------------------------------------------------------------------------------------
    for the second charge. first get the query to get the values of all tables
    mod_time > 31 July 2012.

    If the code exists then update the existing record with valid_till in January 2, 2013 IE yesterday
    and insert a new record with the new values and valid from date to January 3, 2013 IE today
        --------------------2nd load expected output  
          code    id     type  table1_modtime   table2_modtime      table3.modtime      valid_from     valid_till
          2533                 31-JUL-2012                                                               01-01-1995       02-jan-2013 --updating old record valid-till to yesterday
          2534                 31-JUL-2012                                                               01-01-1995       02-jan-2013  --updating old record valid-till to yesterday
          2533      1     AB   31-JUL-2012        01-SEP-2012        01-SEP-2012         03-jan-2013  31-DEC-2030----updating old record valid-from to today
          2534      1     CD   31-JUL-2012        01-SEP-2012       01-SEP-2012          03-jan-2013  31-DEC-2030--updating old record valid-from to today
          2535                  01-SEP-2012                                                              01-01-1995  31-DEC-2030 --no record exist so insert new record in target table
          --------------------------------------------------------------------------------------------------------
      
    Published by: Daniel on January 3, 2013 17:01

    Hello

    Just check the data that you have inserted in the tables, because trying to join the table and put the date constraint its no return value

    select T1.CODE as code ,t3.id as id ,t2.type as type  ,T1.MOD_TIME as table1_modtime ,T2.MOD_TIME as table2_modtime ,T3.MOD_TIME as table3_modtime from table1 t1, table2 t2,table3 t3 where T1.CODE = t2.code and t2.id = t3.id
    and t1.mod_time<=to_date('31-jul-2012', 'DD-MON-YY')
    and t2.mod_time<=to_date('31-jul-2012', 'DD-MON-YY')
    and t3.mod_time<=to_date('31-jul-2012', 'DD-MON-YY')
    

    And that's because for code 2533 and 2534 in table1, the id entry in the table2 is 1. but the entry in table 3 for Id 1 is 01-SEP-2012, falling out of date. Please confirm on this data entry in table2.

  • How to create a second table containing the first?

    I have a table with data source. I would like to create a second table that feeds these data. I will use the second table for the filtered views, etc. I am currently copying a range of cells through, referring to table 1. However, if a new line is added to table 1, it does not table 2. How can I configure things so that any changes - including the new lines/columns would be automatically carried over to table 2?

    Table 2 cannot automatically grow the new rows or columns. If you want it to be completely 'automatic', your second table must be as large or larger than your first picture will be never. In other words, there need to additional rows and columns to allow growth. If is not bigger than 1 table, when you add rows or columns to the table 1, you must also manually add rows or columns to the table 2.  The problem is that all these lines/additional columns in table 2 will have formulas that are referred to non-existent rows/columns in table 1, which is a mistake. What you do next depends on what you do with table 2. If it is just for display of data and your existing formulas are all as = 1::A1 Table, you can change to = SIERREUR (array 1::A1, "") to get rid of the errors.  To hide all blank lines, you can set up a filter to show only the rows where column A is not a space (for example) character. There is no filter to hide additional columns, however.

  • How to create the logical tables &amp; how to give joints according to obiee 11g?

    Hello

    I have again to obiee 11g. I want to create the logical tables in MDB layer.

    After that I want to give joins according to MDB.

    I don't know, how to create the logical tables and how to give joints according to obiee 11g?

    Please help me.

    Thanks in advance,

    A.Kavya

    Hello

    The new logical table is right click on the MDB itself, for the join you generally in the business model diagram (again right click on objects).

    Maybe it's better if you start from a kind of tutorial to at least have an overview of what is happening where (layer business and physical layer etc.).

    Take a look at what Oracle has available: Oracle BI EE 11 g

    And no doubt, it can be a good start: https://apexapps.oracle.com/pls/apex/f?p=44785:24:0:NO:P24_CONTENT_ID, P24_PREV_PAGE:9787, 2

  • ODI 12 c: IKM for differential insert and update with a sequence in the target table

    Hello

    I have a map where I fill in a column of my target table using a database sequence. Now my mapping is supposed to load the target gradually table. So I need a revenge for update and incremental insert. Now with this differential IKM it compares all the columns to match all colmuns line to understand, it should be an insert or update. Now, the following code shows that when the ROW_WID is loaded with a sequence of database.

    If NOT EXISTS

    (select 1 from W_LOV_D T

    where T.ROW_WID = S.ROW_WID

    and ((T.CREATED_BY = S.CREATED_BY) or (T.CREATED_BY IS NULL and S.CREATED_BY IS NULL)) and

    ....

    ....

    < the rest of the comparison of columns >

    )

    So when running ODI returns following error

    Caused by: java.sql.SQLSyntaxErrorException: ORA-00904: "S". "" ROW_WID ": invalid identifier

    Please suggest if there is no other IKM I should use or if there is another way around it without changing the code IKM...

    Hi Marc,

    Thanks for your reply.

    I had solved it. The incremental update process inserts all rows from the source table to I$ table that exists in the target table. It does so by the where sql such as mentioned in my questions as

    WHERE THERE is NOT ( . COLUMNS = . COLUMNS)

    Now in the incremental update IKM Oracle to retrieve all the columns it uses the substitution with parameter as TABLE TARGET. Due to this column sequence will in the comparison and the request fails. When I used the IKM SQL incremental update it used INTEGRATION TABLE as parameter table to pick up the columns, as I'd mentioned in the target sequence is run, so it does not get the sequence column.

    Simple answer: to solve this, use incremental update of the SQL IKM.

    Thank you

    SM

  • The logged data is not loaded in the target table in cdc-compatible?

    Hello

    I tried with cdc-simple concept on single table.

    I had loaded, journaled table (only changed records) inserted in the simple target in cdc table. Its working fine.

    When I work on cdc-consistent and logged data are not loaded in the target table

    For this, I used the data model, it has 3 data stores. log the without option of data, its works very well.

    When I am trying to load tables logged in the target table in interface, its running fine.

    To do this, I chose "logged data only.

    Although I have not changed the records in the target table. target table is empty after the executed insterface.

    err1.png

    err4.png

    err2.png

    err3.png

    I chose the real option of insertion in ikm. But the logged data that is not inserted in the target table.

    Please help me.

    Thankin advacnce,

    A.Kavya.

    Hello

    You must EXPAND WINDOW and LOCK SUBSCRIBERS before consuming the CDC data:

    http://docs.Oracle.com/CD/E14571_01/integrate.1111/e12643/data_capture.htm#ODIDG283

    Subsequently, you unlock Subscriber and purge the log.

    Better to put a package to automate the whole thing.

  • Failed to truncate the target table while programming the interface in ODI

    Hi Expertise,

    I developed a scenario in an interface, where I planned keeping the option Truncate as false, right there the data is been going to target without any problems, but when I changed the status of truncate to TRUE, the interface is been run, but the array is not get truncated, rather the data's been loading again to target. (when running manually, the target table is been truncated perfectly) but not in programming.

    Can someone help me in this problem.

    Thank you

    Shakur.

    Have you regenerate the scenario in question since you changed the option Truncate. If you have not the regular job must still run the old code

  • create an external table based on local drive

    Hello world

    Is it possible to create an external table and that it points to a file on my local drive?

    It is perhaps a silly question. I'm sorry.

    Thank you

    Lydiea

    In addition to the response of William Robertson (which is correct), if you do not have a way to make the server access to your local disk, you can use sql loader on your local computer to load the data into an actual table.

  • Create no partition Table partitioning

    Dear all,

    I have a table that is not partition, and it has about 20 G data... If I want that table with say DATE_M partition column

    Please can anyone suggest the best way to do it.

    Thank you

    To create a partitioned table

    (1) you must make a backup of the existing one you can take expdp or DEC

    (2) remove the table and create the same table now with partitions (a minimum score is required)

    you want a range of ex-based partition if you use a date column

    (3) loading data from the previous table into the new partitioned table, either by DEC or impdp, the inserts will be automatically in their respective partitions and you don't mention explicitly.

    Their is no other possible way to partition a non partitioned table, you can do than workarounds to minimize the downtime of the table trying different ways to load data into the partitioned table.

    You can use the enable row movement clause of create table and also use local indexes for easy maintenance partition.

  • May not know how to create a repeating table to PDF forms in InDesign

    Hello!

    It's all in the title. When I have my table with my header and footer, I can't understand how to create a repeating table for all users of my PDF files interactive.

    Thank you for your help,

    Will be

    If you mean that you try to create a table with entries from forms that develops by creating new topics, I'm sorry to tell you that is not possible in InDesign. It is not yet possible in Acrobat. The only software that takes in charge who is LiveCycle ES Designer that creates some XFA forms, a type of form which becomes less support in the future.

    -Dov

Maybe you are looking for