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"