Mária; esta é uma mensagem referente a um erro quando utilizando o Forms, uma ferramenta de desenvolvimento da Oracle (Oracle Developer). Pelo que eu entendí, o erro ocorre no SQLPlus, não é?
________________________________ De: Mária Cristina Silva <mariancrist...@gmail.com> Para: oracle_br@yahoogrupos.com.br Enviadas: Segunda-feira, 29 de Junho de 2009 12:45:57 Assunto: Re: [oracle_br] Help BOM ACHEI ISSO AQ NO METALINK. MA NÃO SEI COMO FAZER O QUE PEDI.. NÃO ACHEI EXEMPLOS NEM NADA. 1) In the block properties change the key mode property of the block to NON-UPDATABLE Primary Key. Still relevant for 01-March-2007 Problem Description: ============ ======== Getting ORA-01445 when trying to update a view based on two different relational tables. Problem Explanation: ============ ======== A form has been created which is based on a view comprised of two different tables. This view can be updated through SQL/PLUS but when attempted via forms, the following error appears... ORA-01445 CANNOT SELECT ROWID FROM A JOIN VIEW WITHOUT A KEY PRESERVE TABLE. Solution Description: ============ ========= 1) In the block properties change the key mode property of the block to NON-UPDATABLE Primary Key. 2) Make one or more columns primary keys in their item property palette(s). Solution Explanation: ============ ========= Forms is trying to select ROWID as part of the base table query. The server returns information that it is a Multi Table View and there is no Key preserved table therefore Forms does not select the Rowid. At this point the key mode property at the block level is set to Automatic. Forms internally marks this block as being based on a multi table view and therefore cannot update it. The Key mode property specifies how Forms uniquely identifies rows in the database. By default, Oracle uses unique ROWID values to identify each row. Since this view was created based on two different tables, the key mode propery should be set to Non-Updatable. This will cause Forms not to include primary keys. If the database allows primary keys, then set the key mode property to updatable and then create a primary key based on one or more columns and at least one item at the block level 2009/6/29 MARCIO CASTRO <marciomouracastro@ yahoo.com. br> > > > Parece que havia um bug com isso na 9.2.0.5, mas não estou conseguindo > acessar o Metalink a fim de verificar se o mesmo persiste na 10gR2. > A tb_livro foi alterada recentemente? Esta faz select em campos BLOB ou > CLOB, ou utiliza um DB_LINK para uma base não Oracle? > > ____________ _________ _________ __ > De: Mária Cristina Silva <mariancristina@ gmail.com<mariancristina% > 40gmail.com> > > > Para: oracle...@yahoogrup os.com.br <oracle_br%40yahoog rupos.com. br> > Enviadas: Segunda-feira, 29 de Junho de 2009 12:04:36 > Assunto: Re: [oracle_br] Help > > é 10g r2... > > 2009/6/29 MARCIO CASTRO <marciomouracastro@ yahoo.com. br> > > > > > > > Mária; qual é a versão do banco? É a 9.2? > > > > ____________ _________ _________ __ > > De: Mária Cristina Silva <mariancristina@ gmail.com<mariancri stina% > 40gmail.com> > > > > > Para: oracle...@yahoogrup os.com.br <oracle_br%40yahoog rupos.com. br> > > > Enviadas: Segunda-feira, 29 de Junho de 2009 11:04:03 > > Assunto: [oracle_br] Help > > > > > > Bom dia! > > Senhores estou com o seguinte erro: > > > > ORA-01445: não é possível selecionar nem gerar amostragem para ROWID em > uma > > view de junção sem uma tabela preservada com chaves. > > > > Encontrei a query que está dando esse erro, e vi que ele faz um count na > > tabela abaixo, ao fazer isso ele dá essa msg..o estranho é q sempre > > funcionou assim, e so hoje começou a dá esse erro..vi no metalink o > > seguinte > > > > Cause: A SELECT statement attempted to select ROWIDs from a view derived > > from > > a join operation. > > Because the rows selected in the view do not correspond to > > underlying > > physical records, no ROWIDs can be returned. > > Action: Remove ROWID from the view selection clause, then re-execute the > > statement. > > Porém sempre funcinou e nunca tive esse erro.. será q isso pode ser algum > > index?? > > > > (*select* > > *count*(l.Seq_ Solicitacao) SEQ_SOLICITACAO > > *from* > > tb_livro l > > *where > > * > > > > -- > > Abraços, > > Mária Cristina > > Cel: 031-8883-5543 > > E-mail: mariancristina@ gmail.com > > MSN: mcristinasilva3@ hotmail.com > > -- > > "O começo é a parte mais importante do trabalho." > > - Platão > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > ____________ _________ _________ _________ _________ _________ _ > > Veja quais são os assuntos do momento no Yahoo! +Buscados > > http://br.maisbusca dos.yahoo. com > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > -- > Abraços, > Mária Cristina > Cel: 031-8883-5543 > E-mail: mariancristina@ gmail.com > MSN: mcristinasilva3@ hotmail.com > -- > "O começo é a parte mais importante do trabalho." > - Platão > > [As partes desta mensagem que não continham texto foram removidas] > > ____________ _________ _________ _________ _________ _________ _ > Veja quais são os assuntos do momento no Yahoo! +Buscados > http://br.maisbusca dos.yahoo. com > > [As partes desta mensagem que não continham texto foram removidas] > > > -- Abraços, Mária Cristina Cel: 031-8883-5543 E-mail: mariancristina@ gmail.com MSN: mcristinasilva3@ hotmail.com -- "O começo é a parte mais importante do trabalho." - Platão [As partes desta mensagem que não continham texto foram removidas] ____________________________________________________________________________________ Veja quais são os assuntos do momento no Yahoo! +Buscados http://br.maisbuscados.yahoo.com [As partes desta mensagem que não continham texto foram removidas]