DML on a view

Hi
I created a view as below
create or replace view emp_dept(ename,empno,deptno,dname) as
select e.ename,e.empno,e.deptno,d.dname
from emp e,
dept d
where e.deptno=d.deptno;
then i wanted to insert one record
insert into emp_dept(ename,empno) values('abc',89);
It is giving me a error
ora-01779:cannot modify a column which maps to a nonkeypreserved table.
when both the fields are from emp table which is a key preserved table in this joined view why is it giving me a error? any idea???
regards,
satya

It's not about the emp table being key preserved, but the dept table:
SQL> create or replace view emp_dept(ename,empno,deptno,dname) as
  2  select e.ename,e.empno,e.deptno,d.dname
  3  from emp e,
  4  dept d
  5  where e.deptno=d.deptno
  6  /
View is aangemaakt.
SQL> select constraint_name, constraint_type, table_name, r_constraint_name
  2    from user_constraints
  3   where table_name in ('EMP','DEPT')
  4     and constraint_type in ('P','R')
  5  /
CONSTRAINT_NAME                C TABLE_NAME                     R_CONSTRAINT_NAME
EMP_PK                         P EMP
1 rij is geselecteerd.
SQL> insert into emp_dept(ename,empno) values('abc',89)
  2  /
insert into emp_dept(ename,empno) values('abc',89)
FOUT in regel 1:
.ORA-01779: cannot modify a column which maps to a non key-preserved table
SQL> alter table dept add constraint dept_pk primary key (deptno)
  2  /
Tabel is gewijzigd.
SQL> insert into emp_dept(ename,empno) values('abc',89)
  2  /
1 rij is aangemaakt.Regards,
Rob.
Message was edited by:
Rob van Wijk
Sorry padders, the reply should have been addressed to user451372.

Similar Messages

  • Find all DMLs on a view

    Hi!
    I have following situation: I should check our source code for all places where exists INSERTs, UPDATEs,... etc. on one view and implement certain modifications. View name is AG. So to do that my query is:
    SELECT   owner "Owner", NAME "PL/SQL Object Name", TYPE "Type", line "Line",
             text "Text", owner sdev_link_owner, NAME sdev_link_name,
             TYPE sdev_link_type
        FROM SYS.all_source
       WHERE owner = USER
         AND INSTR(UPPER(text), UPPER('AG')) > 0
         AND NAME NOT LIKE 'BIN$%'
    ORDER BY owner, NAME, TYPE, line;Problem is that view name is very tricky and that I'm getting more then 2000 rows (places) where string AG appear. Mostly of this 2000 rows are appearances of sting AG in different context (part of object names, comments,....)
    So my question is does exist some shorter way to find all DMLs on this view except to check more then 2000 rows?

    Problem is that view name is very tricky and that I'm
    getting more then 2000 rows (places) where string AG
    appear. Mostly of this 2000 rows are appearances of
    sting AG in different context (part of object names,
    comments,....)PL/SQL code in all_source is stored one record per code line.
    SQL> desc all_source
    Name Null? Type
    OWNER VARCHAR2(30)
    NAME VARCHAR2(30)
    TYPE VARCHAR2(12)
    LINE NUMBER
    TEXT VARCHAR2(4000)
    SQL> create or replace function funct1(i number) return number
    2 is
    3 begin
    4 return(i+1);
    5 end;
    6 /
    Function created.
    SQL> select count(1) from all_source where NAME='FUNCT1';
    COUNT(1)
    5
    SQL> column text format a50
    SQL> select LINE, TEXT from all_source where NAME='FUNCT1';
    LINE TEXT
    1 function funct1(i number) return number
    2 is
    3 begin
    4 return(i+1);
    5 end;

  • DML on complex views

    If I have a view based upon a join between two tables, does anyone know what the conditions are for inserting, updating or deleting data via the view are? (I'm using Oracle 8i)
    Thanks.

    you can execute the DML statements INSERT, UPDATE, and DELETE on a join view only provided that all of the following are true:
    * The DML statement affects only one of the
    tables underlying the join.
    * If the statement is UPDATE, then all
    columns updated are extracted from a key-
    preserved table. In addition, if the view
    has the CHECK OPTION, join columns and
    columns taken from tables that are
    referenced more than once in the view are
    shielded from UPDATE.
    * If the statement is DELETE, then there is
    one and only one key-preserved table in
    the join. This table may be present more
    than once in the join, unless the view has
    the CHECK OPTION.
    * If the statement is INSERT, then all
    columns into which values are inserted
    come from a key-preserved table, and the
    view does not have the CHECK OPTION.
    HTH
    Naresg
    null

  • DML on materialized view

    Hi,
    I generated materialized view and will maintain data on it when I run delete statement that show below error
    ORA-01732: data manipulation operation not legal on this view
    So my question is How to maintain data on M View (delete old data)? because I need to keep data only 2 months but source table keep data 6 months.
    Regards,
    Hiko

    taohiko wrote:
    There have 8 tables but have only one table that have date/time column and others tables will use primary key from first table relate to data.
    And source tables have total records around 300 million records but I want 2 months that around 90 million records.
    So I plan to delete data every days that older than 2 months and delete others table with relation by primary from first table.
    Can I do? and How to do that?
    Regards,
    HikoHi,
    No you cannot delete the data from materialized view if the view is complex and does not statisfy some basic rules.
    Even if you satisfy some of the basic rules still the thing/expectation you have with your MV is not provided by Oracle. If you delete any data from MV, it would be deleted from base table also.
    Work around and a better implementation would be
    Just include in your create mv a where clause stating
    date/time column > trunc(sysdate)-60This would take care of all the other tables data also if they are joined with the main table.
    Regards
    Anurag

  • Update a view in oracle forms

    Hi.
    I have a block based on a view ( this view is based on two tables). How do I update the base tables when the record based on this view is updated in the form?
    Thanks

    one way is to control the transaction by using database trigger " instead of "
    on the view.
    If a view is inherently updatable and has INSTEAD OF triggers, the triggers take preference. In other words, Oracle fires the triggers instead of performing DML on the view.
    second way is to execute a DML from the forms manually by intersepting the default functionality of on-insert, on-update trigger and so on..... to perform transaction on the table.
    But i'll recommend using the INSTEAD of triggers, see documentation for more help and examples.

  • "instead of" trigger on a view with a condition

    I'm trying to create an instead-of trigger on a view but I want it all such that:
    1. It fires only for a certain condition.
    2. When the condition isn't met, I want the normal DML on the view to continue as it normally would.
    3. I want to avoid writing as much manual DML code as possible for long-term maintainability.
    My first attempt is like this:
    create or replace trigger PROPOSAL_PARTS_V_IRU
      instead of update on proposal_parts_v
      for each row
      WHEN :old.PART_MASTER_ID <> :new.PART_MASTER_ID
    BEGIN
      do_stuff_for_part_master_change;
    END;So when the OLD and NEW PART_MASTER_IDs have changed, I want special processing. Else, I want it to do whatever it normally does (let the view get updated and the database will manage the update of the underlying table).
    When compiling that I get "ORA-25004: WHEN clause is not allowed in INSTEAD OF triggers".
    OK I will accept that even though I want it to work.
    So my next attempt could be:
    create or replace trigger PROPOSAL_PARTS_V_IRU
      instead of update on proposal_parts_v
      for each row
    BEGIN
      IF :old.PART_MASTER_ID <> :new.PART_MASTER_ID THEN
        do_stuff_for_part_master_change;
      ELSE
        UPDATE proposal_parts -- Manually update the underlying table with manually-written DML but I hate having to do this in case the view or table columns change.
        SET...
        WHERE...
      END;So my question is...is there any syntax to do something like this?
    create or replace trigger PROPOSAL_PARTS_V_IRU
      instead of update on proposal_parts_v
      for each row
    BEGIN
      IF :old.PART_MASTER_ID <> :new.PART_MASTER_ID THEN
        do_stuff_for_part_master_change;
      ELSE
        update_row;
      END;...where "update_row" is some sort of built-in command that tells oracle to continue with the current update as if the trigger never existed.
    Back in the day I seem to remember that Oracle Forms had a trigger and syntax like this where you could intercept a DML and if under certain conditions it wasn't true, you could say "update_row" (or maybe it was "update_record?...whatever) and it meant "continue with update as if this instead-of trigger never existed".
    Is anything available like that for the DB now? I know in older versions no, but we are now on 11g...anything new come out like this?
    Otherwise I have to manually write an update statement and I'd rather not if I don't need to.
    Thanks!

    riedelme wrote:
    gti_matt wrote:
    I'm trying to create an instead-of trigger on a view but I want it all such that:
    1. It fires only for a certain condition.You can use IF Logic inside a trigger to do or not do anything. As long as it is a condition you can check you can code IF logic around it
    2. When the condition isn't met, I want the normal DML on the view to continue as it normally would.You will have to code all of your logic in the INSTEAD of trigger. The whole purpose of the INSTEAD OF trigger is to execute INSTEAD OF performing DML on the view. There is no way to go back to the "normal DML" when the INSTEAD OF trigger exists.
    You can put all of the logic you will need in the INSTEAD OF trigger and use IF conditions. Use IF logic to code both your special and "normal" processing.
    3. I want to avoid writing as much manual DML code as possible for long-term maintainability.You will have to code the operative lines somewhere. Reusable functions and/or procedures in a package?Yep using an "IF" I knew about...no problem there.
    But was just looking for a cheap and easy way to say (for the "else" condition) to revert to normal DML processing. Sounds like in a DB trigger there is no such syntax I guess.
    This is an example from Oracle Forms, I was looking for a database equivalent of this(see http://sqltech.cl/doc/dev2000/help/fbhelp18.htm):
    Built-in Subprograms for On-Event Triggers For most of the transactional On-event triggers, there is a corresponding built-in subprogram.
    On-Event Trigger
    Corresponding Built-in
    On-Delete
    DELETE_RECORD
    On-Insert
    INSERT_RECORD
    On-Update
    UPDATE_RECORD
    When you call one of these built-in subprograms from its corresponding transactional trigger, Form Builder performs the default processing that it would have done normally at that point in the transaction.
    For example, if you call the INSERT_RECORD procedure from an On-Insert trigger, Form Builder performs the default processing for inserting a record in the database during a commit operation.
    When these built-ins are issued from within their corresponding transactional triggers, they are known as do-the-right-thing built-ins. That is, they do what Form Builder would normally have done at that point if no trigger had been present. Thus, an On-Insert trigger that calls the INSERT_RECORD procedure is functionally equivalent to not having an On-Insert trigger at all. Such a trigger is explicitly telling Form Builder to do what it would have done by default anyway.Note that the author calls them the "do-the-right-thing" built-ins. That's what I was looking for but on the DB side. Sounds like Oracle didn't come up with that (yet)?

  • INSTEAD of Trigger View for an Oracle EBS New form development

    Hello,
    I am developing a new EBS form based on a database view.
    This form is an EBS form will run in an 11.5.10.2 environment and developed using 6i.
    The form has one data block that is based on the view. The view is joined and based on following tables.
    Hz_Parties Hp,
    Hz_Cust_Accounts
    Hz_Cust_Acct_Sites_All
    Hz_Party_Sites
    Hz_Locations
    Ra_Salesreps_All
    Hz_Cust_Site_Uses_All
    Ar_Vat_Tax_All
    xx_custom_table t
    The view is inherently not updatable. Therefore, I am thinking to write an INSTEAD OF trigger on the view. The question. The form which is based on the view is require to update Oracle EBS tables mentioned above. As you know, there are APIs available to update above tables.
    Typically, you would write API in a program unit in the form and call from triggers. But here the form is based on the view. And to support DMLs on the view, I HAVE TO write INSTEAD of trigger(or that is the only way i know) so the question is:
    1. Do I write these APIs under INSTEAD of triggers?
    2. Or, I write these API in the form triggers and write DML referencing OLD and NEW values in INSTEAD of trigger? Where, these OLD and NEW values will refer on above tables.
    Please advise.
    And lastly, Do I have to write an INSTEAD of trigger? The USER_UPDATEABLE_COLUMNS view for this table shows no columns are updateable at the moment
    Thanks,
    A

    As you know, there are APIs available to update above tables.No, I don't B-) You'd better ask this in the eBusiness Suite form, as this is very EBS, not Forms, specific.
    In general, I would say that in this case you can use the EBS API's in the instead of trigger, not in the form.
    Or you can base the form on stored procedures, not directly on the view.

  • Updatable View as data block source - can't get to work

    I have created a simple form with one data block based on an updatable view, but it doesn't work properly after the form executes a query.
    I can use DML on this view using SQL*Plus and it works as it should.
    DML works in the form too, but only until I execute a query, after that I get the "FRM-40602: cannot insert into or update a view" error each time I try an insert, update, or delete.
    This is repeated for each runtime of the form. I have set the "query only" property to yes for the non-DMLable item from the view so that isn't part of the problem. This is an example out of "Developer Advance Forms and Reports (page 112) - Oracle Press" so it should work. There is nothing else (code, triggers, etc...) in this module besides the one data block.
    Any ideas would be appreciated.
    Thanks. Bill Brosnan.

    I have had the same issue and had to go through Oracle Support to get it working.
    First of all make sure that you have a recent patch installed (patch 9 as being the latest one available).
    Second, set in the data block the property key mode to updatable and the property primary key to yes for one item of the data block. (this is bug 1561423)
    Make sure that you only modify those columns that are updateable.
    Quite a large number of bugs have been reported on the concept of updatable views and the installation of a recent patch will most definitely get you working again.
    This functionality does work !
    Goodluck,

  • Oracle 8i, Views and Triggers

    Our application uses Views, which are essentially mirrors of the tables to perform all updates. A GRANT ALL to PUBLIC is given to the views. These updates fire Triggers on the Tables which has worked great until we attempted to run our application at a new client running 8i on Unix. I noticed the INSTEAD_OF option on triggers for 8i, but is it a definite requirement for 8i. I can't believe the old normal trigger code now fails on 8i (by disconnecting); or is it something else. Please advise.
    null

    We asked our developers and here is the answer...and a follow up question.
    The INSTEAD OF is a new option on triggers to work over views. This has absolutely no impact on existing triggers on tables. If you have a view defined over a table (or set of tables) and then perform any DML over the
    view, in the regular case, the DML will translate to operations on the base tables and the appropriate triggers on the base table will fire.
    With the new INSTEAD OF option since Oracle8.0, you can define a trigger over
    a view itself, (particular if the view is complex enough that the system cannot handle inserts/updates/deletes on the view), and the trigger body will handle the DML by firing appropriate statements.
    The problem you are seeing is probably something else.
    What do you mean by "disconnecting"??
    Are you getting some sort of error or something when using the old triggers??
    -John
    null

  • Trigger of a view

    Good morning,
    Does a trigger of a view start like a trigger of a table ?
    I mean, a view searches its data in a table of a linked DB. If a row is added in the table, will the trigger of the view run ?
    Thank you very much.
    Patrick

    If a row is added in the table, will the trigger of the view run ?Triggers on views are INSTEAD OF and are specified for views as objects - NOT the tables you include in your selection in views. Because of this only DML applied to views (not tables) fire "instead of" triggers:
    SQL> create table t (id number);
    Table created.
    SQL> create view t_v as select * from t;
    View created.
    SQL> create trigger tab_t
      2  before insert on t
      3  begin
      4   dbms_output.put_line('Table trigger');
      5  end;
      6  /
    Trigger created.
    SQL> create trigger view_tr
      2  instead of insert on t_v
      3  begin
      4   dbms_output.put_line('View trigger');
      5  end;
      6  /
    Trigger created.
    SQL> insert into t values(1);
    Table trigger
    1 row created.
    SQL> insert into t_v values(2);
    View trigger
    1 row created.Rgds.

  • Allowing sys.dual DML Grants

    Hi,
    I'm wondering if anyone has noticed or could confirm if a particular hole was patched.
    Here is the situation: Our dba's (I'm a dev) recently installed PSU patch 18031726.
    Previous to this, one of our vendor apps had views that used some form of "SELECT [something] FROM DUAL".  The views are owned by the schema-owner, and by default the App user is granted Select, Update, Insert, and Delete on all of the schema-owner's views (I'm aware that this is against best practices regarding DML on dual, but sys.dual itself does not have DML grants).
    All my googling refers to the notion that all underlying objects of a view must have all permissions that will be then granted to the grantee, including sys.dual.
    But again--sys.Dual *only* has SELECT granted to public, no other explict grants are given.   However schema-owner granted the DML grants on these views to the 3rd party (app user) *without error*.   No DML was ever actually done--but the grants were allowed without error (always logged into Toad as Schema-owner, not sys).  My guess is this was an oversight in Oracle, though it's likey any attempt at DML to dual would have errored, even though the viewe had DML grants.
    Now, since the patching, when these views are created and the grants are given to app-user by the schema-owner, we see the error Ora 01720 Grant option does not exist for sys.dual
    SO bottom line...circumstantially I would like to attribute this new error (now correctly pointing out that Dual has no DML grants) to the security patch, but I can't close this issue in my head until I get some form of confirmation that yes--Oracle found this lack of raising an error on the grants and it was corrected in this patch.
    Has anyone come across this behavior, i.e, sudden errors after a patch involving some (misguided and against best practices, admittedly) DML grants on views that include Dual?
    Thanks,
    Jim

    Is the message "Ora 01720 Grant option does not exist for sys.dual"
    OR is the message Ora 01720 Grant option does not exist"
    Is the schema owner attempting to grant privileges on SYS.DUAL  ?
    OR is he granting privileges only on his own views ?
    Is the schema owner running "CREATE OR REPLACE VIEW..."   [Oracle Support note "Post Upgrade To 11.2.0.4, "create or replace view" execution fails with "ORA-01720: Grant Option Does Not Exist" (Doc ID 1628033.1)" has an explanation]
    Hemant K Chitale

  • Single row editing for multiple tables in a single page

    Hi!
    I have split a table with many many columns into more tables with a lower number of columns. There is an ID column (sequence generated) that is Primary Key common for all tables. Obviously, the relationship between these tables is 1 to 1, so it’s not about having to build master-detail pages.
    What I need now is to edit all these tables in a single page: one single row from each table. The Automated Row Fetch & Automatic Row Processing (DML) processes used for the old table must be replaced by something else.
    Is there a way to use in a single page more pairs of such processes for more tables?
    I want to avoid manually writing processes with lot of PL/SQL code to handle row fetch & update.
    Keep in mind that the page will have an ID item that can be used to identify unique rows in all my tables.
    Thanks,
    Sorin

    I have split a table with many many columns into more tables with a lower number of columns
    IMHO that is a very bad idea. There is nothing wrong with having many columns in a table. If you would like to split them to better "categorize" them, just create views on the table and expose different subsets of the columns.
    I want to avoid manually writing processes with lot of PL/SQL code to handle row fetch & update.
    That is unavoidable given how you have designed the underlying tables.
    You could try creating a view that joins all the tables by the PK and creating a form based on that view. Then write a INSTEAD OF trigger on the view that "doles out" the DML on the view to each of the underlying tables.

  • INSTEAD OF TRIGGER

    제품 : PL/SQL
    작성날짜 : 1999-07-13
    INSTEAD OF Trigger
    1. 개념
    INSTEAD OF trigger는 Oracle8에서 새로이 소개된 방법으로, DML문장에 의해
    직접 변경할 수 없는 view를 변경하기 위해 사용된다. 즉, base table이 fire
    하는 trigger를 생성하는 것이 아니고 view를 대상으로 trigger를 생성하여
    view에 대한 DML문장을 수행시 대신 trigger가 fire되어 base table을 직접
    변경하게 되는 것이다.
    기본적으로 DML이 불가능한 view는 다음 사항들을 포함하고 있는 경우이
    다. 이러한 사항을 포함한 view들에 대해서 instead of trigger를 생성하면 DML을
    수행할 수 있게 된다.
    (1) DISTINCT operator
    (2) group functions: AVG, COUNT, MAX, MIN, STDDEV, SUM, VARIANCE등
    (3) set operations: UNION, MINUS 등
    (4) GROUP BY, CONNECT BY, START WITH clauses
    (5) ROWNUM pseudocolumn
    (6) join (updatable join view인 경우는 제한적으로 DML수행가능 <Bul:11642>참
    조)
    2. EXAMPLE
    instead of trigger의 예를 다음과 같이 작성하였다.
    (1) base tables
    create table dept
    (deptno number(4) primary key,
    dname varchar2(14),
    loc varchar2(13));
    create table emp
    (empno number(4),
    ename varchar2(10),
    sal number(7,2),
    mgr number(4),
    deptno number(2) );
    (2) 직접 dml을 수행할 수 없는 view
    create view emp_dept
    as select empno, ename, sal, emp.deptno, dname
    from emp, dept where emp.deptno=dept.deptno;
    [참고] 이 예에서 dept table의 deptno가 primary key나 unique로 선언되어 있
    다면 emp_dept view는 updatable join view가 되어 key-reserved table인 emp table
    에 대한 dml은 trigger를 사용하지 않아도 직접 수행 가능하다. <Bul:11642>참

    (3) instead of trigger
    view에 DML을 수행시 내부적으로 수행되기를 원하는 logic을 임의로 user가
    작성하면 된다.
    아래의 예에서는 emp_dept에 insert문장을 수행하는 경우 기존에 존재하는
    dept정보에 대해서는 update를 수행하고, 새로은 dept정보는 insert하도록 하였다.
    그리고 emp table에 대해서는 empno가 primary key이므로 중복되는 row는
    자동으로 오류가 발생하게 되며, 새로운 값을 insert하게 되면
    emp table에 직접 insert를 하게 된다.
    create or replace trigger emp_dept_insert
    instead of insert on emp_dept
    referencing new as n
    for each row
    declare
    dept_cnt number;
    begin
    if :n.empno is not null then
    insert into emp(empno, ename, sal)
    values (:n.empno, :n.ename, :n.sal);
    end if;
    if :n.deptno is not null then
    select count(*) into dept_cnt
    from dept where deptno = :n.deptno;
    if dept_cnt > 0 and (:n.dname is not null) then
    update dept set dname = :n.dname where deptno = :n.deptno;
    else insert into dept(deptno, dname) values(:n.deptno, :n.dname);
    end if;
    end if;
    end;
    (4) DML statement
    다음과 같이 insert 문장을 view에 수행하면 emp_dept_insert trigger가
    fire되어 실제 emp와 dept table에 반영이 되어 emp_dept view에 insert가
    수행된 것 같이 보이게 된다.
    insert into emp_dept values (5000, 'EYKIM', 100, 10, 'SALES');
    insert into emp_dept(empno, ename, deptno) values (6000, 'YOUNKIM', 20);
    insert into emp_dept (empno, deptno, dname) values (7000, 50, 'NEW_DEPT');

    No, the INSTEAD OF trigger is on the View, and so only fires if you perform Insert/Update/Delete on the View.

  • Issue with Instead of Trigger

    Hi everyone,
    I have a view v_test . Created one instead of trigger over it. When I try to insert over the view it is throwing an error like' ORA-00036: maximum number of recursive SQL levels (50) exceeded' . Please help me how to over come from this.
    Please find the below DDL Stmts;
    CREATE TABLE test (id NUMBER,
    name VARCHAR2(10 CHAR),
    sal NUMBER,
    dept_id NUMBER);
    CREATE OR REPLACE VIEW v_test
    IS
    SELECT * FROM test;
    Trigger Code:
    CREATE OR REPLACE TRIGGER TR_V_TEST
    INSTEAD OF INSERT ON V_test
    FOR EACH ROW
    BEGIN
    INSERT INTO V_test VALUES(107,'VEERA',20000,30);
    END;
    Thanks in Advance !!
    Thanks,
    Vissu....

    Vissu,
    One and main scenario of mutating table error is depicted by your code only. You have created instead of Insert Trigger on view, within which again you are trying to insert on the same view i.e. you are trying to perform DML on a view which is already under transition state.
    Actually, Oracle tries hard to do the task. No of attempts is the value specified for "session_cached_cursors" (which is 50 here), but fails finally to recognise the table/view state, so throws the exception ORA-00036.
    In your case, instead of trigger was not required. You must understand the purpose of Instead of triggers. They are used when Multiple Tables build a view, and a DML on the view required data insertion in multiple tables. In above case, only one table is involved, so instead of trigger is not required. DML on your view can insert only in TEST table.
    But in above case, handle this by avoiding the DML(Insert) on the view inside the instead of insert trigger.
    Your purpose by insert on the view is to insert into TEST table only. So inside Instead of trigger,you can directly insert into table.
    Hope it is clear now !!

  • Edition Based Redefinition in Oracle 11g R2

    Regarding new feature EBR in Oracle 11g r2
    As we all know Editioning view is like a wrapper over the base table which allows each edition to see the table in the form it needs, all data operations will be on editioning view once the view is created.
    ( Small downtime is required to rename the original_table to original_table_base, as we need to create editioning view as "original_table", applications do not have to change anything as its still pointing to "original_table" )
    During our POC on editioning views (DMLs on E.Views), we have noticed base table names into redo logs ("original_table_base")!!
    This requires significant amount of changes on the application utilizing redo log as source. (for example Goldengate).
    My question is do we have any work around to convert those redo entries into "original_table" ?

    Deepak,
    If I do remember correctly, 11gr2 table compression is enabled for the subsequent data only(can't recall whether its applicable to the exsiting data as well, need to verify it). Also, if the table's data is mostly unique, the rate of compression won't be much higher.
    HTH
    Aman....

Maybe you are looking for

  • Line item Shipping data missing in STO

    Hi, I am making an STO ( same company code ). I have added 4 line items in the STO. For three line items, everything is ok. But when I added the fourth line item , the system gives an information message that sales org data and shipping data could no

  • List of Individuals in Oracle Payables AME Workflow

    Hi all, I want to create 'List of Individuals in Oracle Payables AME Workflow'. For Example:- If I initiate approval my invoice from Oracle Payables then I want to see a list of particular employees to whom I'm willing to forward the invoice. This pa

  • SOA Enterprise Manager Page not coming up

    Hi, I have installed a mid-tier version of SOA Suite. I am not able to get the App. Server Enterprise Manager. Here is the link that I am trying but it always comes back with Page cannot be found: http://localhost:7779/em Other controls works i.e. BP

  • Refresh SBO Order

    Dear Sir, I am using the DI to add an order to the database using the oOrder.Lines.Add methods and VB6 SP6 as developpemt language but instead of creating a new form I am using the standard SBO Order form. the problem is that when I open the order fo

  • Messages app can't connect

    Hi, I can't connect to my iMessage account with the Messages application from my Mac ( 10.8.5) I am retyping my user/password - which works for my other Apple services ( iCloud, iTunes store,...) but the Messages app can't connect. Also, the FaceTime