Join View

Hi All,
I am reading about the join view.I got stuck about the “Key-Preserved Tables".
The general rules for Join View .
UPDATE Rule
     All updatable columns of a join view must map to columns of a key-preserved table. See "Key-Preserved Tables" for a discussion of key-preserved tables. If the view is defined with the WITH CHECK OPTION clause, then all join columns and all columns of repeated tables are non-updatable.
DELETE Rule     Rows from a join view can be deleted as long as there is exactly one key-preserved table in the join. If the view is defined with the WITH CHECK OPTION clause and the key preserved table is repeated, then the rows cannot be deleted from the view.
INSERT Rule     An INSERT statement must not explicitly or implicitly refer to the columns of a nonkey preserved table. If the join view is defined with the WITH CHECK OPTION clause, INSERT statements are not permitted.
Can any body clear about these points with sample examples..

Do the manipulation on your tables in a ON-INSERT, ON-UPDATE and ON-DELETE on block-level triggers
e.g.
ON-UPDATE trigger
Begin
Update Table_1
Update Table_2
End ;

Similar Messages

  • How to putXML on a joined View?

    Hi
    I would like to insert an XML document into two tables (some
    elements into table 1 and some into table 2). I have created a
    joined view of the two tables and have tried to insert into the
    view with:
    java OracleXML putXML -user %USER_PASSWORD% -filename myfile.xml
    myView
    But I get the error "cannot modify a column which maps to a non
    key-preserved table". PLEASE GIVE A SPECIFIC EXAMPLE OF AN
    UPDATABLE 'VIEW' WHERE AN INSERT CAN MODIFY MORE THAN ONE
    UNDERLYING TABLE. Is it possible?
    Any example will do. But here is what I tried to do. I tried
    to map the first few ROW child elements of an XML document (shown
    at the bottom) into columns of the EMP table and the remaining
    child
    elements into another table called RELATIVE (this is a table
    containing next-of-kin contact information for each employee). I
    created a RELATIVE table with:
    CREATE TABLE RELATIVE (
    IDREL NUMBER(15) PRIMARY KEY,
    EMPNUM NUMBER(4) CONSTRAINT FK_REL REFERENCES SCOTT.EMP(EMPNO),
    RNAME VARCHAR2(20) NOT NULL,
    TEL NUMBER(14),
    STREET VARCHAR2(30),
    CITY VARCHAR2(20),
    STATE VARCHAR2(10),
    ZIP VARCHAR2(12),
    COUNTRY VARCHAR2(20)
    I added a EMPNO_DUP column to the EMP table that is a copy of
    the
    EMPNO primary key (I did this so as to use EMPNO_DUP for the two
    table join, rather than the EMPNO primary key. My first attempts
    to make the joined view with EMPNO also gave the same error). I
    wrote a PL/SQL trigger than would make sure that EMPNO_DUP and
    EMPNO remain in synch if EMPNO is updated or if there is an
    INSERT on EMP. Then I created a joined view of EMP and RELATIVE
    with:
    CREATE OR REPLACE VIEW EMPREL
    (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, EMPNO_DUP
    IDREL, EMPNUM, RNAME, TEL, STREET, CITY, STATE, ZIP, COUNTRY)
    AS SELECT
    E.EMPNO, E.ENAME, E.JOB, E.MGR, E.HIREDATE, E.SAL, E.COMM,
    E.DEPTNO,E.EMPNO_DUP,
    R.IDREL, R.EMPNUM, R.RNAME, R.TEL, R.STREET, R.CITY, R.STATE,
    R.ZIP, R.COUNTRY
    FROM EMP E, RELATIVE R WHERE E.EMPNO_dup=R.EMPNUM;
    I tried to insert the XML document shown at the bottom with:
    java OracleXML putXML -user %USER_PASSWORD% -filename myfile.xml
    myView
    I also tried the direct SQL command:
    INSERT INTO EMPREL
    (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO,EMPNO_DUP,
    IDREL, EMPNUM, RNAME, TEL, STREET, CITY, STATE, ZIP, COUNTRY)
    VALUES
    (7944, 'WIZARD', 'CLERK', 7782, '25-JUL-82', 1325, 0, 10, 7944,
    1, 7944, 'SUE', 4087200111, '200 MAIN ST.', 'PALO ALTO', 'CA',
    '94043', 'USA')
    Both attempts resulted in this error message:
    "cannot modify a column which maps to a non key-preserved table"
    I would really appreciate an example of how to create an
    updatable view where two or more underlying tables can be
    modified. Thanks.
    Regards
    Mehran Moshfeghi
    Here is the sample XML file. I want the first set of elements to
    map to EMP table columns and the second set of elements (after
    the blank line) to map to the RELATIVE table columns.
    <?xml version="1.0"?>
    <ROWSET>
    <ROW>
    <EMPNO>7942</EMPNO>
    <ENAME>GUNNEL</ENAME>
    <JOB>CLERK</JOB>
    <MGR>7782</MGR>
    <HIREDATE>1982-02-25 00:00:00.0</HIREDATE>
    <SAL>1350</SAL>
    <DEPTNO>10</DEPTNO>
    <EMPNO_DUP>7942</EMPNO_DUP>
    <IDREL>2</IDREL>
    <RNAME>SMITH</RNAME>
    <TEL>6504262551</TEL>
    <STREET>2171 LANDINGS DRIVE</STREET>
    <CITY>MOUNTAIN VIEW</CITY>
    <STATE>CA</STATE>
    <ZIP>94043-0837</ZIP>
    <COUNTRY>USA</COUNTRY>
    </ROW>
    </ROWSET>
    null

    Hi Mehran,
    This is a classic view update problem where the database cannot
    figure out automatically which table(s) to update given a join
    view. Any update/insert/delete cannot act on more than one
    table.So if you are updating a column in a join-view, then that
    column must map to a particular column of a single table
    unambigously. You should look at the documentation on updatable
    join views.
    One of the easiest solutions to your problem is to create
    INSTEAD-OF trigger on those views. INSTEAD-OF triggers are
    triggers that can be created over non-updatable views to make
    them updatable. Here in the trigger body you specify the
    appropriate insert statements into the base tables. So your view
    can be as complicated as possible and yet updatable using these
    triggers.
    Thx
    oracle XML team
    Mehran (guest) wrote:
    : Hi
    : I would like to insert an XML document into two tables (some
    : elements into table 1 and some into table 2). I have created a
    : joined view of the two tables and have tried to insert into
    the
    : view with:
    : java OracleXML putXML -user %USER_PASSWORD% -filename
    myfile.xml
    : myView
    : But I get the error "cannot modify a column which maps to a
    non
    : key-preserved table". PLEASE GIVE A SPECIFIC EXAMPLE OF AN
    : UPDATABLE 'VIEW' WHERE AN INSERT CAN MODIFY MORE THAN ONE
    : UNDERLYING TABLE. Is it possible?
    : Any example will do. But here is what I tried to do. I tried
    : to map the first few ROW child elements of an XML document
    (shown
    : at the bottom) into columns of the EMP table and the remaining
    : child
    : elements into another table called RELATIVE (this is a table
    : containing next-of-kin contact information for each employee).
    I
    : created a RELATIVE table with:
    : CREATE TABLE RELATIVE (
    : IDREL NUMBER(15) PRIMARY KEY,
    : EMPNUM NUMBER(4) CONSTRAINT FK_REL REFERENCES SCOTT.EMP
    (EMPNO),
    : RNAME VARCHAR2(20) NOT NULL,
    : TEL NUMBER(14),
    : STREET VARCHAR2(30),
    : CITY VARCHAR2(20),
    : STATE VARCHAR2(10),
    : ZIP VARCHAR2(12),
    : COUNTRY VARCHAR2(20)
    : I added a EMPNO_DUP column to the EMP table that is a copy of
    : the
    : EMPNO primary key (I did this so as to use EMPNO_DUP for the
    two
    : table join, rather than the EMPNO primary key. My first
    attempts
    : to make the joined view with EMPNO also gave the same error).
    I
    : wrote a PL/SQL trigger than would make sure that EMPNO_DUP and
    : EMPNO remain in synch if EMPNO is updated or if there is an
    : INSERT on EMP. Then I created a joined view of EMP and
    RELATIVE
    : with:
    : CREATE OR REPLACE VIEW EMPREL
    : (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO, EMPNO_DUP
    : IDREL, EMPNUM, RNAME, TEL, STREET, CITY, STATE, ZIP, COUNTRY)
    : AS SELECT
    : E.EMPNO, E.ENAME, E.JOB, E.MGR, E.HIREDATE, E.SAL, E.COMM,
    : E.DEPTNO,E.EMPNO_DUP,
    : R.IDREL, R.EMPNUM, R.RNAME, R.TEL, R.STREET, R.CITY, R.STATE,
    : R.ZIP, R.COUNTRY
    : FROM EMP E, RELATIVE R WHERE E.EMPNO_dup=R.EMPNUM;
    : I tried to insert the XML document shown at the bottom with:
    : java OracleXML putXML -user %USER_PASSWORD% -filename
    myfile.xml
    : myView
    : I also tried the direct SQL command:
    : INSERT INTO EMPREL
    : (EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO,EMPNO_DUP,
    : IDREL, EMPNUM, RNAME, TEL, STREET, CITY, STATE, ZIP, COUNTRY)
    : VALUES
    : (7944, 'WIZARD', 'CLERK', 7782, '25-JUL-82', 1325, 0, 10, 7944,
    : 1, 7944, 'SUE', 4087200111, '200 MAIN ST.', 'PALO
    ALTO', 'CA',
    : '94043', 'USA')
    : Both attempts resulted in this error message:
    : "cannot modify a column which maps to a non key-preserved
    table"
    : I would really appreciate an example of how to create an
    : updatable view where two or more underlying tables can be
    : modified. Thanks.
    : Regards
    : Mehran Moshfeghi
    : Here is the sample XML file. I want the first set of elements
    to
    : map to EMP table columns and the second set of elements (after
    : the blank line) to map to the RELATIVE table columns.
    : <?xml version="1.0"?>
    : <ROWSET>
    : <ROW>
    : <EMPNO>7942</EMPNO>
    : <ENAME>GUNNEL</ENAME>
    : <JOB>CLERK</JOB>
    : <MGR>7782</MGR>
    : <HIREDATE>1982-02-25 00:00:00.0</HIREDATE>
    : <SAL>1350</SAL>
    : <DEPTNO>10</DEPTNO>
    : <EMPNO_DUP>7942</EMPNO_DUP>
    : <IDREL>2</IDREL>
    : <RNAME>SMITH</RNAME>
    : <TEL>6504262551</TEL>
    : <STREET>2171 LANDINGS DRIVE</STREET>
    : <CITY>MOUNTAIN VIEW</CITY>
    : <STATE>CA</STATE>
    : <ZIP>94043-0837</ZIP>
    : <COUNTRY>USA</COUNTRY>
    : </ROW>
    : </ROWSET>
    Oracle Technology Network
    http://technet.oracle.com
    null

  • ORA-01776: cannot modify more than one base table through a join view

    I have created EO based on a database view than consists of two tables, and only one is updateable.
    When I try to update a row using EO, I got a following message: "ORA-01776-cannot modify more than one base table through a join view"
    In Forms, this issue is resolved by setting "Query Only" property of non-updateable items to "True".
    Is it possible to do something like that in ADF BC?
    Thanks

    Thanks for answer.
    When I set "updateable" property to "Never", that attribute is protected from any change.
    I'm sorry for incomplete usecase.
    I have set up a list of value on that attribute, because it is a lookup field for another table and I need to get an ID from that table.
    Basically, I need that attribute to be updateble for BC, but not for database.
    Edited by: MarioK on Oct 13, 2011 9:28 AM

  • Cannot modify more than one base table through a join view

    hi guys, my current problem is that i have a datablock based on a view, now all the fields bar 1 are updateable, but this one field that is obtained through a join is displayed, the user can enter data in this field which then pupulates other fields which are required, but this specific field should not be updated. Is there an option to state this as i keep getting the error:
    cannot modify more than one base table through a join view
    Any help would be greatly appreciated, thanks.

    the user can enter data in this field which then pupulates other fields So, using the value of "this field" you then query the rest of the fields? Can you show us the code you use to populate the rest of the fields?
    but this specific field should not be updatedHave you tried setting the "Query Only" property of the field to "Yes" and the other DML properties (Ins, Upd, Del) to No?
    Also, what is your Forms version?
    Thanks,
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.

  • Spatial query on join view in another schema

    Background:
    I have a schema with tables containing four spatial columns per table. I have a second schema that contains join views of the tables in the first schema. The join view consists of the attributes and any other tabular data that is joined via foreign key to non-spatial tables and one of the four geometry columns. I have a third schema that owns no database objects of its own, but has select privilege to the second schema's view objects.
    We are using Oracle 10.2.0.2 on a windows platform.
    This worked in 9i, the problem only presented itself when we migrated to 10g.
    Problem:
    When I run a spatial query on a join view in the second schema(the schema that owns the object), it runs and returns results in about a second. When I run the exact same query in the third schema it routinely takes 20-30 seconds.
    Here is the query that I run in both schemas with varying query times:
    SELECT COUNT(*)
    FROM two.join_view_a A
    WHERE (MDSYS.SDO_FILTER(A.GEOM, SDO_GEOMETRY(2003,8307,NULL,SDO_ELEM_INFO_ARRAY(1,1003,3),SDO_ORDINATE_ARRAY(26.6396,26.5708,43.346,34.4083)),'QUERYTYPE=WINDOW')='TRUE');
    Question:
    Why does this happen?
    What can I do to fix this problem?
    Thanks,
    John

    Have a read of this posting: Oracle spatial view runing slow as different user
    There are details there about the 'optimizer_secure_view_merging' parameter and the effect it can have on cross schema views in 10.2

  • Spatial join view

    Good afternoon,
    I am new on oracle spatial and I have to do a simple spatial join view. So from two table name and a operation I have to create a view that makes a join of type "operation" between two table.
    For example, in a high level language:
    create or replace view VIEW_NAME as select * from table1,table2 where operation(table1.geom,table2.geom).
    Where "operation" could be intersect, touch, overlaps,contains, disjoint...and so on...
    I can't find a complete example for my problem.
    Thanks for all your help, it is very important.
    Best regards
    Anna Zanetti

    ok..thank you very much.
    But If I want to make one of the following operation (BBOX,Beyond,Contains,Crosses,Disjoint,
    Equals,Intersects,Overlaps,Touches,Within), what kind of mask have I to use?
    I understand that this are the possibile mask:
    TOUCH, OVERLAPBDYDISJOINT, OVERLAPBDYINTERSECT, EQUAL, INSIDE, COVEREDBY, CONTAINS, COVERS, ANYINTERACT, ON
    I think that there is not a perfect matching, in fact I think that ANYINTERACT is different from intersects!!!
    I am wrong?
    Is there any table of matching between operations???
    Thank a lot
    Best regards
    Anna Zanetti

  • ORA-01445: cannot select ROWID from, or sample, a join view without a key-p

    Hi All,
    I am facing issue with one sql query. It is giving me error:
    ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table
    I am not getting any clue to solve this. On internet, i didn't find proper reason for this error and troubleshooting way and solution for this error. Everywhere i saw one sentence, "Key preserved means the row from the base table will appear AT MOST ONCE in the output view on that table" but it didn't solve my problem.
    I have 1099 columns in one select query. so avoiding the actual column list in select clause. Instead I am trying to select ROWIDs from all tables in join. My understanding is ROWID is a unique identifier in table not in database. But though I remove ROWIDs, I get same error. So please don't bother about these ROWIDs.
    SELECT
    TO_DATE(FACT.BUS_DATE_FKID,'YYYYMMDD')
    ,FACT.ROWID AS ABC1
    ,FACT_ADJ.ROWID AS ABC2
    ,DIM_SEC.ROWID AS ABC3
    ,DIM_SEC_ADJ.ROWID AS ABC4
    ,DIS_CAT.ROWID AS ABC5
    ,CTRY.ROWID AS ABC6
    ,BCP.ROWID AS ABC7
    ,STAGE.ROWID AS ABC8
    FROM FACT_POSITION FACT
    LEFT JOIN FACT_POSITION_ADJ FACT_ADJ ON FACT.POSITION_PKID = FACT_ADJ.POSITION_FKID
    LEFT JOIN DIM_SOURCE_SYSTEM SOURCE ON FACT.SOURCE_SYSTEM_FKID = SOURCE.SOURCE_SYSTEM_PKID
    LEFT JOIN DIM_SECURITY DIM_SEC ON FACT.SUBSYS_SECURITY_FKID = DIM_SEC.SECURITY_PKID
    LEFT JOIN DIM_SECURITY_ADJ DIM_SEC_ADJ ON FACT.SUBSYS_SECURITY_FKID = DIM_SEC_ADJ.SECURITY_PKID
    LEFT JOIN DIM_DISCLOSURE_CATEGORY DIS_CAT ON FACT.DISCLOSURE_CATEGORY_FKID = DIS_CAT.DISCLOSURE_CATEGORY_PKID
    LEFT JOIN COUNTRY_REFERENCE CTRY ON CTRY.DESCRIPTION = DIM_SEC.ISSUER_COUNTRY
    LEFT JOIN BUSINESS_CLOSE_PERIOD BCP
    ON BCP.BUSINESS_CLOSE_DATE = ADD_MONTHS(TRUNC(TO_DATE(FACT.BUS_DATE_FKID,'YYYYMMDD'),'MM'), 1) -1
    AND BCP.IS_LOCKED='Y' AND BCP.IS_ACTIVE='Y'
    LEFT JOIN GUI_STAGING STAGE ON
    FACT.POSITION_PKID=STAGE.POSITION_PKID
    AND STAGE.IS_ACTIVE='Y'
    AND STAGE.STATUS_ID IN(12,8,1,2,3,4,5)
    WHERE FACT.POSITION_PKID=64524374;
    While trying to sort this error, I found interesting things that made me more confused.
    if I remove TO_DATE function from select clause, same join query works.
    If I remove any table from join and keep TO_DATE function in select clause, query works.
    That tells, there is no problem in query.
    Then please anyone help me to sort out the error. FYI. I have googled a lot for this error. but didn't get solution/clue. That is why I am posting this problem to forum.
    Thanks in advance. waiting for reply ASAP.
    Pravin Pujari
    [email protected]

    I think i got the solution. The syntax i was using (ANSI syntax) doesn't work in the oracle database version i am using.
    When i updated my query with older oracle syntax, it worked.
    SELECT
    TO_DATE(FACT.BUS_DATE_FKID,'YYYYMMDD')
    ,FACT.ROWID AS ABC1
    ,FACT_ADJ.ROWID AS ABC2
    ,SOURCE.ROWID AS ABC3
    ,DIM_SEC.ROWID AS ABC4
    ,DIM_SEC_ADJ.ROWID AS ABC5
    ,DIS_CAT.ROWID AS ABC6
    ,CTRY.ROWID AS ABC7
    ,BCP.ROWID AS ABC8
    ,STAGE.ROWID AS ABC8
    FROM [email protected] FACT
    ,[email protected] FACT_ADJ
    ,[email protected] SOURCE
    ,[email protected] DIM_SEC
    , [email protected] DIM_SEC_ADJ
    , [email protected] DIS_CAT
    , GUI.COUNTRY_REFERENCE CTRY
    , GUI.BUSINESS_CLOSE_PERIOD BCP
    , GUI.GUI_STAGING STAGE
    WHERE FACT.POSITION_PKID=64517140
    AND FACT_ADJ.POSITION_FKID(+) = FACT.POSITION_PKID
    AND SOURCE.SOURCE_SYSTEM_PKID=FACT.SOURCE_SYSTEM_FKID
    AND DIM_SEC.SECURITY_PKID=FACT.SUBSYS_SECURITY_FKID
    AND DIM_SEC_ADJ.SECURITY_PKID(+)=DIM_SEC.SECURITY_PKID
    AND FACT.DISCLOSURE_CATEGORY_FKID = DIS_CAT.DISCLOSURE_CATEGORY_PKID
    AND CTRY.DESCRIPTION = DIM_SEC.ISSUER_COUNTRY
    AND BCP.BUSINESS_CLOSE_DATE = ADD_MONTHS(TRUNC(TO_DATE(FACT.BUS_DATE_FKID,'YYYYMMDD'),'MM'), 1) -1
    AND BCP.IS_ACTIVE='Y'
    AND FACT.POSITION_PKID=STAGE.POSITION_PKID
    AND STAGE.IS_ACTIVE='Y'
    AND STAGE.STATUS_ID IN(12,8,1,2,3,4,5);

  • How to create a left join view in se11??

    I would like to create a view which contains KNA1,KONA,KNVV,KNVH(four tables) , I want to use this view to create a search help for Tcode 'VBO3'.
    but when I join table KNVH, there is no data in view, because there is no customer hierarchy, so I want to create a left join view. could you please tell me how to create a left join view? Thank you very much.

    Hello,
    yes, in general, maint. view and help view could be created as outer join view.
    but it should obey relationship.
    my fourt tables:
    KONA -
    > I want to get agreement number and type from this table
    KNA1 -
    >I want to get customer name, city, country from this table
    KNVH -
    >I want to get customer hierarchy from this table.
    KNVV -
    >I want to get customer group 1 from this table.
    but in help view, I can only get relationship between KONA and KNA1.
    I could not find the relationship for KNVH and KNVV.
    if it's required to add a search help exit, then how to write the code in the function?
    Could somebody please give me any solutions? thank you.

  • ADF Join View Object

    we have a Join View Object joining Customer and Order tables. The Output in ADF table is like this
    CustomerName------------OrderID
    John------------------------------------1
    John------------------------------------2
    John------------------------------------3
    Tom------------------------------------80
    Tom------------------------------------81
    Tom------------------------------------82
    We need to show the out but as
    CustomerName------------OrdersPlaced
    John------------------------------------1,2,3
    Tom------------------------------------81,82,83
    Please suggest how we can acheive this
    Thanks
    Edited by: user11922045 on Oct 19, 2010 2:53 PM

    Our requirement is similar to a Order - OrderDetail example, (where the number of details many times wont exceed 3)
    The Order table has just the Order number and some name... and Order detail has order item, price and date detail item requested ..
    So we just need to show the list of Order and for each order( the details..item no, item, price, date time req)..
    As you can see we can fetch it in one single query..
    I can't ask the user to click on the Order number/name to see the Order details in adifferent table every time.
    Typically when i was using java.. i used to populate the details into the Order VO as an ArrayList of Order Items. w could delete just one detail/ as well as a complete Order all together.
    Please suggest.

  • Cannot select ROWID from, or sample, a join view without a key-preserve

    I'm getting an error "cannot select ROWID from, or sample, a join view without a key-preserved table" when performing an INSERT. There is no error when performing an UPDATE.
    I created a "Form with Reports" page, where the Reports is based on a view multi table join. The primary key I chose during the form creation process is "From Trigger". The primary key "ACCESS_ID" has been defined in the base table. On the view, I have created an INSTEAD OF TRIGGER, for both Insert and Update. The update seems to work. I am using the automatic row processing for the update and insert.
    Additional information: My insert works standalone i.e. i write
    insert into jxjplntr_access_v (col1, ...)
    values (va1, val2...)
    and it works when i run it on SQL window.
    access_id has a constraint defined as not null and also PK.
    I have an insert "instead of" trigger defined on the jxjplntr_access_v view.
    However, when i "CREATE" a record after filling in the values, I get the above error. BTW, here is the view definition:
    CREATE OR REPLACE VIEW jxjplntr_access_v (
    access_id,
    person_id,
    person_name,
    badge_number,
    ntr_resp_type,
    primary_flag,
    start_date_active,
    end_date_active,
    created_by,
    created_by_uname,
    creation_date,
    last_updated_by,
    last_updated_by_uname,
    last_update_date,
    last_update_login )
    AS
    select
    access_id,
    ja.person_id,
    initcap(p.last_name||', '||p.first_name) person_name,
    p.employee_number badge_number,
    ntr_resp_type,
    primary_flag,
    ja.start_date_active,
    ja.end_date_active,
    ja.created_by,
    f1.user_name created_by_uname,
    ja.creation_date,
    ja.last_updated_by,
    f2.user_name last_updated_by_uname,
    ja.last_update_date,
    ja.last_update_login
    from jplntr.jplntr_access ja
    ,fnd_user f1
    ,fnd_user f2
    ,per_people_x p
    where f1.user_id(+) = ja.created_by
    and f2.user_id(+) = ja.last_updated_by
    and p.person_id(+) = ja.person_id
    Thanks in advance.
    K
    Edited by: kktong on Dec 12, 2011 5:39 PM
    Edited by: kktong on Dec 13, 2011 10:06 AM

    I've just been looking at exactly the same problem. From my initial investigations, this seems to be a bug with Apex and creating a tabular form, as described in this thread here:
    v4.0 - Tabular form ORA-01445: cannot select ROWID from, or sample,
    Very frustrating!
    I hope thats of use to you. If I find out anything else, I'll come back and let you know.
    Simon
    Edited by: Simon Holt on 26-Jul-2012 03:32

  • Cannot select ROWID from a join view without a key-preserved table at OCI c

    Hi All,
    Can anybody help me..?
    When i am creating the request in the presentation services ..
    for some of the columns i am getting the following error..by removing those those columns it's working fine..
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 17001] Oracle Error code: 1445, message: ORA-01445: cannot select ROWID from a join view without a key-preserved table at OCI call OCIStmtExecute. [nQSError: 17010] SQL statement preparation failed. (HY000)
    Please suggest me a solution..
    Thanks in Advance...

    Looks like you have a view that contains the ROWID of another table. Does the view work first from sqlplus? See whether it returns any data. Its a ORA- specific error. So, the error is related to your view rather than BI EE. Also, how many columns are you trying to pull in your report?
    Thanks,
    Venkat
    http://oraclebizint.wordpress.com

  • " ORA-01445: cannot select ROWID from, or sample, a join view without a key

    GREETINGS !
    CREATED TABULAR FORM WITH QUERY
    WHILE EXECUTE ON SQL COMMANDS ITS EXECUTES AND SHOWS RECORDS, PASTE SAME QUERY ON TABULAR FORM SOURCE . WHEN RUN PAGE IT GIVES ERROR
    " ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table".
    Edited by: Omzz on Oct 3, 2012 10:34 PM

    When setting the tabular form, only use the table that you are trying to update/modify.
    After that is working, modify the SQL source with the other tables.
    By just pasting an SQL query into the region source, it doesnt know what tables you are trying to update
    PS - Please turn off "Caps Lock" :-)

  • Ora-01445 cannot select rowid from or sample a join view ?

    Hi All
    I get this error , while creating VO
    "ora-01445 cannot select rowid from or sample a join view without a key-preserved table"
    I created an EO, my table doesnt have primary key and it EO by deafualt created ROWID as primary key
    When i create VO, using the following query by joining fnd_flex_values , then i see this ORA error
    SELECT xxg2sourceacctneweo.elimination_sob_id, xxg2sourceacctneweo.ROWID
    FROM xxg2_elim_source_accts xxg2sourceacctneweo, fnd_flex_values fvs WHERE fvs.flex_value = xxg2sourceacctneweo.source_acct_value
    but I was able to get the results in TOAD, with out any issue.
    as a part of testing , if i change the query to join to fnd_user , it works fine
    SELECT XXG2SourceAcctNewEO.ELIMINATION_SOB_ID,
    XXG2SourceAcctNewEO.ROWID FROM xxg2_elim_source_accts XXG2SourceAcctNewEO,fnd_user fc where fc.user_id=XXG2SourceAcctNewEO.created_by
    Any suggestions?
    Thanks
    Ravi
    Edited by: rashmrs on Oct 6, 2009 9:47 PM

    Ravi,
    Please mark some attributes as PRimary Key in your VO. Then the system would not automatically generate the ROWID. You can remove this View attribute using the VO wizard.
    Regards
    Sumit

  • ORA-01445 : cannot select rowid from a join view without a key preserved ta

    Hi,
    I am using Designer6i for generatin forms:
    my blokc is based on a view...
    when executing the module, I have the following error when trying to change a value of an item :
    FRM 40501: unabe to reserve record for update or delete ,
    the display error say :
    ORA-01445 : cannot select rowid from a join view without a key preserved table!!!!!
    Any help please ???

    you either create an INSTEAD OF trigger for that view or use on-lock trigger on that block to edit, e.g., SELECT ...INTO...FROM...WHERE...FOR UPDATE NOWAIT.

  • ORA-01445: cannot select ROWID from a join view without a key-preserved tab

    Hi All,
    I have 2 windows in a form. When i click on a button in first window, then 2nd window will be opened. (Note: both windows are based have master-details relationship with Table1 and Table2 respectively)
    When i enter the information in 2nd window and click the SAVE Button it has to save those values to database. It used to work fine earlier. now, i am getting the following error.
    FRM-40501: ORACLE error: unable to reserve record for update or delete.
    ORA-01445: cannot select ROWID from a join view without a key-preserved table
    Please help me, how can i resolve this error. Also, guide me what is a key-preserved table.
    Thanks in advance,
    Amar

    Firstly: - Please make sure that you have not opened the same record somewhere else in any other form and trying to update from there.
    Secondly: - In your window 1 have you opened the same record which you are querying, editing and saving in window 2 ? If yes then this will givbe you error as you are trying to update a record which is already being updated somewhere else.
    Please mark if it helps

Maybe you are looking for

  • Italian Iphone 4S - Can I use it witk a USA sim card?

    I'll go in USA for holidays. I'd like to use my iphone 4S in order to surf the net, to find restaurant and hotels or to use apple maps. Moreover I'll make some phone calls to reserve it. Does an italian iphone 4S work with an american prepaid micro s

  • Save Oracle Report Output as PDF format in the system folder

    Hi, Is it possible to Save Oracle Reports Output as PDF(file_name.pdf) format in the system folder(say C:\temp\file_name.pdf). I am using Repors 10g R2. Note : i dont want to open the report preview as PDF, just i want to save the PDF file in the a s

  • Is there a 1 800 number for the usa?

    i need to resett all my songs(delete them)i messed up and created doublers and the i pod came with no manual! dell   Windows XP  

  • Hyper-V 2012 R2 & Windows 8.1 VMs performance metrics using WMI query

    Hi, I used the following query to fetch the Disk utilization for Hyper-V VMs (non v2 hosts) using its host credential "select ReadBytesPersec,WriteBytesPersec,ReadCount,WriteCount from Win32_PerfRawData_StorageStats_HyperVVirtualStorageDevice" but fo

  • Data Loadong Issue

    Hi, When i am loading data fron One ODS to another ODS it is giving error            'The requested object is locked by another transaction'. I checked in SM12 and RS12 there is no lock objects. Please provide the solution. Regards, vijay