Pois é Alessandro, tratando-se de objetos como tabelas eu até sabia disso,
mas na minha cabeça achava que seria diferente com objetos PL/SQL.

Agora que descobri a verdade, faz todo sentido funcionar também com PL/SQL,
pois qq objeto do BD é armazenado internamente em tabelas do DD.

Valeu pela dica!

[]s


Em 15 de outubro de 2013 18:13, Alessandro Lúcio Cordeiro da Silva <
alecordeirosi...@yahoo.com.br> escreveu:

> **
>
>
> Olá Fabio,
>
> Só para te esclarecer, os comandos DDL são transacionais, eles
> simplesmente tem uma instrução COMMIT no final, para proteger os
> dicionarios de dados, como John Watson explica:
>
> "The COMMIT and ROLLBACK statements apply only to DML. You cannot roll
> back a DDL statement: once executed, it is immediately durable. If it
> were possible to see the
> source code for (for example) the CREATE TABLE command, it would be
> obvious why. When you create a table, you are in fact doing a transaction
> against some data dictionary
> tables: at the very least, you are inserting a row into SYS.TAB$, a data
> dictionary table with one row to define every table in the database, and
> one or more rows into SYS.COL$,
> a data dictionary table with one row for the definition of every column of
> every table in the database. Then the command concludes with a COMMIT.
> This is to protect the
> data dictionary: if the COMMIT were not built into the CREATE TABLE
> command, the possibility of an incomplete transaction would arise, and an
> incomplete transaction
> in the data dictionary could have appalling side effects."
>
> Alessandro Lúcio Cordeiro da Silva
>         Analista de Sistema
> þ http://alecordeirosilva.blogspot.com/
> O tic-tac do relógio me lembra de algo muito importante que esta
> acontecendo: estamos vivos.
>                                 "Joana de Souza Schmitz Croxato"
>
>
>   ------------------------------
>  *De:* Fabio Prado <fbifa...@gmail.com>
> *Para:* oracle_br@yahoogrupos.com.br
> *Enviadas:* Terça-feira, 15 de Outubro de 2013 15:55
> *Assunto:* Re: [oracle_br] Bkp de objetos no banco
>
>
>  Vivendo e aprendendo!
>
> O procedimento que o Alessandro Lúcio passou funciona sim. Acabei de
> testar.
>
> Como a gravação de objetos PL/SQL não é transacional (eles ficam gravados
> diretamente no DD), conceitualmente achei que eles não geravam UNDO e que
> não dava para usar FLASHBACK query ou version, pois essas tecnologias
> utilizam-se de dados de UNDO.
>
> Agradeço por ter aprendido isso!
>
> []s
>
>
>
>
>
> Em 15 de outubro de 2013 15:57, Alessandro Lúcio Cordeiro da Silva <
> alecordeirosi...@yahoo.com.br> escreveu:
>
> **
>
>  Vitor,
> <http://br-mg5.mail.yahoo.com/neo/launch#>
>    Existe uma VIEW que contem o código SQL, é a DBA_SOURCE, eu tentei
> executar um flashback nesta view e pra mim deu privilegios insuficiente,
> não sei se é somente o DBA dar acesso a flashback nesta view ou a ORACLE
> fecha acesso nela. mas se você fizer o select sem o flashback esta view tem
> o codigos das procedures, function entre outros objetos. Tenta ver de com
> DBA se o ele consegue com a conta do SYS.
>
> select *
>   from dba_source AS OF TIMESTAMP (SYSTIMESTAMP-INTERVAl '3' DAY) S
>  where s.owner = 'SYS'
>    and s.name = 'OWA_UTIL'
>    and s.TYPE = 'PACKAGE BODY'
>  order by line;
>
>  OBS.: Agora não tenho nenhum banco de teste para verificar isso, somente
> os banco de producao que não tenho tantos privilegios.
>
> Alessandro Lúcio Cordeiro da Silva
>         Analista de Sistema
> þ http://alecordeirosilva.blogspot.com/
>
>
>   ------------------------------
>  *De:* Fabio Prado <fbifa...@gmail.com>
> *Para:* oracle_br@yahoogrupos.com.br
> *Enviadas:* Terça-feira, 15 de Outubro de 2013 14:11
> *Assunto:* Re: [oracle_br] Bkp de objetos no banco
>
>
>  Infelizmente não!
>
>
> Em 15 de outubro de 2013 15:04, Victor Freidinger <
> victor_freidin...@yahoo.com.br> escreveu:
>
> **
>
>  Olá Fábio,
>
> Obrigado pelo retorno.
> Realmente, não há o que fazer? Não há uma tabela v$ que eu consiga
> consultar os códigos utilizados nos objetos?
> Tem a v$sql que eu consigo ver apenas selects, updates, etc., agora o
> código dentro de um objeto eu não encontrei.
>
> Obrigado.
>
>
>   ------------------------------
>  *De:* Fabio Prado <fbifa...@gmail.com>
> *Para:* oracle_br@yahoogrupos.com.br
> *Enviadas:* Terça-feira, 15 de Outubro de 2013 15:00
> *Assunto:* Re: [oracle_br] Bkp de objetos no banco
>
>
>
> Victor, neste caso, só um backup do BD ou Flashback Database (se estiver
> habilitado), poderá te ajudar. Vc vai ter que pedir ao DBA responsável pelo
> BD, fazer a restauração para vc.
>
>  Uma forma de evitar este tipo de problema no futuro e possibilitar uma
> recuperação bem rápida do objeto, através de simples instruções SQL, é
> criar o repositório de metadados que eu apresento no artigo:
> http://www.fabioprado.net/2012/06/repositorio-de-metadados-no-oracle.html
>
> []s
>
> Fábio Prado
>
>
> Em 15 de outubro de 2013 14:48, Victor Freidinger <
> victor_freidin...@yahoo.com.br> escreveu:
>
> **
>
>  Olá pessoal,
>
> Estou com um problema desse nível:
>
> Criei recentemente uma procedure em um ambiente de desenvolvimento e
> solicitei ao usuário testar todo o processo.
> Depois de algum tempo, o usuário testou só que não me passou o retorno.
> Acabou que caindo no esquecimento e a procedure que estava no banco foi
> perdida pela atualização do sistemas e eu não tinha um bkp desse objeto.
> Na verdade já existia uma procedure com mesmo nome e eu apenas alterei
> algumas coisas para testar e, após os testes, iria pegar o objeto ou
> corrigir algum outro problema.
> Quando foi atualizado a nova versão do sistema, apagou tudo.
>  Há como eu rever o objeto criado anteriormente?
> Ou alguma forma de eu ver o create procedure feito anteriormente(que ai eu
> conseguiria ver todo o conteúdo e restaurar)?
>
> Obrigado desde já.
>
>
>
>
> --
> Fábio Prado
> www.fabioprado.net
> "Compartilhando conhecimentos e treinando profissionais em Bancos de Dados
> Oracle"
>
>
>
>
>
>
>
>
> --
> Fábio Prado
> www.fabioprado.net
> "Compartilhando conhecimentos e treinando profissionais em Bancos de Dados
> Oracle"
>
>
>
>
>
>
> --
> Fábio Prado
> www.fabioprado.net
> "Compartilhando conhecimentos e treinando profissionais em Bancos de Dados
> Oracle"
>
>
>
>   
>



-- 
Fábio Prado
www.fabioprado.net
"Compartilhando conhecimentos e treinando profissionais em Bancos de Dados
Oracle"

Responder a