RES: [oracle_br] Tabelas iguais em schemas distintos
Bom dia David, Tenho o TOAD sim, o select vai ajudar a montar um relatório pra apontar os schemas que tem tabelas com nomes iguais e até idênticas. A idéia de levantar essas informações é, para as tabelas idêtnticas, sugerir usá-las em um modelo de dados corporativo, tendo em vista que a empresa não tem. E aproveitando gostaria de saber se a galera tem alguma documentação ou algo do tipo sobre como criar um modelo de dados corporativo, melhores práticas e afins. Agradeço a atenção e toda dica é sempre bem vinda. Abraços, Giovanni. De: oracle_br@yahoogrupos.com.br em nome de David Ricardo Enviada: qui 11/8/2011 17:10 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Desculpa me intrometer no assunto , Mais se tu tiver um TOAD ou SQL NAVIGATOR por ai, ele tem uma ferramenta de COMPARE SCHEMAS que ajuda muito brother, até pra gerar report's para as pessoas que você precisa passar essa informação. Fica só a Dica... Abraço Em 11 de agosto de 2011 16:48, Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br mailto:giovanni.sousa%40funasa.gov.br escreveu: ** Valeu Sandro, Agora vou avaliar qual a melhor forma de avaliar... Abraço. De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br em nome de Sandro Niederauer Curte Enviada: qui 11/8/2011 15:51 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Vai depender do grau de precisão que tu necessita no select que mandei apenas leva em consideração o nome da tabela. Mas se ao invés disso é preciso considerar a estrutura, então é como o colega David sugeriu. O select abaixo tem um grau bem maior, inclusive tu podes alterar essa precisão apenas excluindo colunas, como por exemplo se a ordem não é importante, então é só tirar o COLUMN_ID do select. SELECT DISTINCT B.OWNER, B.TABLE_NAME FROM ( SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE, COLUMN_ID FROM DBA_TAB_COLUMNS GROUP BY TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE, COLUMN_ID HAVING COUNT(*)1 ) A, DBA_TABLES B WHERE A.TABLE_NAME = B.TABLE_NAME ORDER BY 2,1; 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br mailto:giovanni.sousa%40funasa.gov.br ** Sandro, O que você sugeriu é como está nesse select? select column_name, owner, TABLE_NAME from dba_tab_columns where column_name in ( select column_name from dba_tab_columns group by column_name having count(*)1 ) and owner like 'DB\_%' ESCAPE '\' ORDER BY 1 Abraço... De: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br em nome de David Ricardo Enviada: qui 11/8/2011 14:56 Para: oracle_br@yahoogrupos.com.br mailto:oracle_br%40yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Sandro , Acredito que se ele usar a ALL_TAB_COLUMNS seria melhor não acha?..Pois pode ser que o nome seja igual, mas a compição dos campos sejam diferentes. O que acha?.. Abraço Em 11 de agosto de 2011 14:49, Sandro Niederauer Curte sandr...@gmail.com mailto:sandronc%40gmail.com mailto:sandronc%40gmail.com escreveu: select distinct owner from dba_tables where table_name in ( select table_name from dba_tables group by table_name having count(*)1 ); 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br mailto:giovanni.sousa%40funasa.gov.br mailto: giovanni.sousa%40funasa.gov.br ** Boa tarde Galera, Fiz um levantamento do dicionário de dados aqui da empresa e me deparei com a seguinte situação. - Existem vários schemas com os mesmos nomes de tabela. Sendo assim, gostaria de saber como faço um select, que me retorne os schemas que contém tabelas idênticas. Desde já agradeço. Atenciosamente, Giovanni [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ -- Links do Yahoo! Grupos
RES: [oracle_br] Tabelas iguais em schemas distintos
Era isso mesmo que eu queria...enquanto a saber se a estrutura das tabelas é mesma, é interessante também, assim passo uma informação mais concreta. Teria como me ajudar? Desde já agradeço... Giovanni De: oracle_br@yahoogrupos.com.br em nome de Sandro Niederauer Curte Enviada: qui 11/8/2011 14:49 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos select distinct owner from dba_tables where table_name in ( select table_name from dba_tables group by table_name having count(*)1 ); 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br ** Boa tarde Galera, Fiz um levantamento do dicionário de dados aqui da empresa e me deparei com a seguinte situação. - Existem vários schemas com os mesmos nomes de tabela. Sendo assim, gostaria de saber como faço um select, que me retorne os schemas que contém tabelas idênticas. Desde já agradeço. Atenciosamente, Giovanni [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Tabelas iguais em schemas distintos
Sandro, O que você sugeriu é como está nesse select? select column_name, owner, TABLE_NAME from dba_tab_columns where column_name in ( select column_name from dba_tab_columns group by column_name having count(*)1 ) and owner like 'DB\_%' ESCAPE '\' ORDER BY 1 Abraço... De: oracle_br@yahoogrupos.com.br em nome de David Ricardo Enviada: qui 11/8/2011 14:56 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Sandro , Acredito que se ele usar a ALL_TAB_COLUMNS seria melhor não acha?..Pois pode ser que o nome seja igual, mas a compição dos campos sejam diferentes. O que acha?.. Abraço Em 11 de agosto de 2011 14:49, Sandro Niederauer Curte sandr...@gmail.com mailto:sandronc%40gmail.com escreveu: select distinct owner from dba_tables where table_name in ( select table_name from dba_tables group by table_name having count(*)1 ); 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br mailto:giovanni.sousa%40funasa.gov.br ** Boa tarde Galera, Fiz um levantamento do dicionário de dados aqui da empresa e me deparei com a seguinte situação. - Existem vários schemas com os mesmos nomes de tabela. Sendo assim, gostaria de saber como faço um select, que me retorne os schemas que contém tabelas idênticas. Desde já agradeço. Atenciosamente, Giovanni [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ -- Links do Yahoo! Grupos -- -- David Ricardo B. de Siqueira IT Brazil - Database Administrator DBANet BLOG .: http://databaseguard.blogspot.com http://databaseguard.blogspot.com/ O mistério da vida me causa a mais forte emoção. É o sentimento que suscita a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e seus olhos se cegaram..(Albert Einstein - 1879 - 1955) [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
RES: [oracle_br] Tabelas iguais em schemas distintos
Valeu Sandro, Agora vou avaliar qual a melhor forma de avaliar... Abraço. De: oracle_br@yahoogrupos.com.br em nome de Sandro Niederauer Curte Enviada: qui 11/8/2011 15:51 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Vai depender do grau de precisão que tu necessita no select que mandei apenas leva em consideração o nome da tabela. Mas se ao invés disso é preciso considerar a estrutura, então é como o colega David sugeriu. O select abaixo tem um grau bem maior, inclusive tu podes alterar essa precisão apenas excluindo colunas, como por exemplo se a ordem não é importante, então é só tirar o COLUMN_ID do select. SELECT DISTINCT B.OWNER, B.TABLE_NAME FROM ( SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE, COLUMN_ID FROM DBA_TAB_COLUMNS GROUP BY TABLE_NAME, COLUMN_NAME, DATA_TYPE, DATA_LENGTH, DATA_PRECISION, DATA_SCALE, NULLABLE, COLUMN_ID HAVING COUNT(*)1 ) A, DBA_TABLES B WHERE A.TABLE_NAME = B.TABLE_NAME ORDER BY 2,1; 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.br ** Sandro, O que você sugeriu é como está nesse select? select column_name, owner, TABLE_NAME from dba_tab_columns where column_name in ( select column_name from dba_tab_columns group by column_name having count(*)1 ) and owner like 'DB\_%' ESCAPE '\' ORDER BY 1 Abraço... De: oracle_br@yahoogrupos.com.br em nome de David Ricardo Enviada: qui 11/8/2011 14:56 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Tabelas iguais em schemas distintos Sandro , Acredito que se ele usar a ALL_TAB_COLUMNS seria melhor não acha?..Pois pode ser que o nome seja igual, mas a compição dos campos sejam diferentes. O que acha?.. Abraço Em 11 de agosto de 2011 14:49, Sandro Niederauer Curte sandr...@gmail.com mailto:sandronc%40gmail.com escreveu: select distinct owner from dba_tables where table_name in ( select table_name from dba_tables group by table_name having count(*)1 ); 2011/8/11 Giovanni Ferreira de Sousa giovanni.so...@funasa.gov.brmailto: giovanni.sousa%40funasa.gov.br ** Boa tarde Galera, Fiz um levantamento do dicionário de dados aqui da empresa e me deparei com a seguinte situação. - Existem vários schemas com os mesmos nomes de tabela. Sendo assim, gostaria de saber como faço um select, que me retorne os schemas que contém tabelas idênticas. Desde já agradeço. Atenciosamente, Giovanni [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ -- Links do Yahoo! Grupos -- -- David Ricardo B. de Siqueira IT Brazil - Database Administrator DBANet BLOG .: http://databaseguard.blogspot.com http://databaseguard.blogspot.com/ http://databaseguard.blogspot.com/ O mistério da vida me causa a mais forte emoção. É o sentimento que suscita a beleza e a verdade, cria a arte e a ciência. Se alguém não conhece essa sensação ou não pode mais exprimir espanto ou surpresa, já é um morto-vivo e seus olhos se cegaram..(Albert Einstein - 1879 - 1955) [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -- Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ Links do Yahoo! Grupos [As partes desta mensagem que não