Boa Tarde Senhores, Muito Obrigado por toda ajuda prestada.
Meu cenario, mudou ! A tabela é uma historico de processamento de rotinas, o usúario vai precisar das informações dos últimos 6 meses, preciso montar uma função para deletar as linhas e deixar somente os últimos seis meses. Vocês teriam algum exemplo para esse delete, mais alguma sugestão Obrigado, Alex --- Em seg, 4/5/09, Josÿffffffffffe9 Ferreira <ja_...@yahoo.com.br> escreveu: De: Josÿffffffffffe9 Ferreira <ja_...@yahoo.com.br> Assunto: Re: [oracle_br] Deletar grande quantidade de linhas Para: oracle_br@yahoogrupos.com.br Data: Segunda-feira, 4 de Maio de 2009, 18:11 Alex, Antes de fazer o particionamento, lembre-se que você vai ter que criar uma nova tabela já particionada ou usar o pacote DBMS_REDEFINITION. e demois fazer a carga Tome cuidade ao criar a tabela com CREATE TABELAS X AS SELECT ... Pelo tamanho de sua tabela eu não aconselho essa alternativa. Caso opte, em criar uma nova tabela e faça os inserts, faça um bloco PL/SQL, além disso pode você usar também o hint INSERT /*+ APPEND */ . Atere sua tabela pra NOLOGGING. Outra coisa, se o seu banco estiver em modo archive log, verifica a possibilidade de desativá-lo durante o procedimento. a--- Em seg, 4/5/09, Caio Spadafora <caiospadafora@ yahoo.com. br> escreveu: De: Caio Spadafora <caiospadafora@ yahoo.com. br> Assunto: Re: [oracle_br] Deletar grande quantidade de linhas Para: oracle...@yahoogrup os.com.br Data: Segunda-feira, 4 de Maio de 2009, 18:59 Sugiro particionamento por range em um campo data populado pelo default sysdate no momento do insert. Mas é fundamental que você trabalhe com tablespaces diferentes, se possível uma para cada partição, isso vai te permitir algumas manobras interessantes para isolar o que você quer remover. Simplesmente criar uma outra tabela com os dados que você quer vai ter um custo muito grande levando em conta a quantidade de linhas, lembrando que para usar o particionamento você vai precisar de uma licença enterprise e possuir o option de particionamento. Atenciosamente, Caio Spadafora. http://0011brothers .blogspot. com/ --- Em seg, 4/5/09, Duilio Bruniera Junior <bruni...@gmail. com> escreveu: De: Duilio Bruniera Junior <bruni...@gmail. com> Assunto: Re: [oracle_br] Deletar grande quantidade de linhas Para: oracle...@yahoogrup os.com.br Data: Segunda-feira, 4 de Maio de 2009, 13:37 cria um nova tabela usando o comando: create table <tabela_name> as select ... <os campos que voce quer> from <tabela que voce quer copiar> where <suas restrições>; - truncate na tabela; - depois um insert voltando os dados; INSERT INTO <owner>.<tabela> (<campo1>, <campo2>, <campo3>, <campo4>) SELECT <campo1>, <campo2>, <campo3>, <campo4> FROM <owner>.<a tabela que voce criou com create table as select ...> se puder não esqueça de fazer um backup dessa tabela tambem. ta feito. Mais no seu caso seria muito mais interessante se voce criasse por exemplo uma tabela particionada, dai conforme o tempo voce poderia ir apenas dropando as antigas. mais ou menos assim. CREATE TABLE TABELA1 ( col1 number(5) not null, col2 varchar2(50) not null, col3 date not null ) tablespace TBS_TABELA_1 partition by range (col3) (partition SEMESTRE1 values less than (to_date("01- JUL-2006" ,"DD-MON- YYYY")) tablespace TBS_USERS_1, partition SEMESTRE2 values less than (to_date("01- JAN-2007" ,"DD-MON- YYYY")) tablespace TBS_USERS_2) ; beleza ? 2009/5/4 alex maior <alex_maior@ yahoo. com.br> > > > Senhores, > > Bom Dia, > > Estou precisando fazer um expurgo em uma > tabela que tem 260.739.106 linhas. > > A minha instância funciona 24x7x365. > > Preciso fazer o expurgo de +/- 10.000.000 de linhas a cada seis meses, > deixar somente as informações de 6 meses atrás até o presente momento. > > Minha dúvida: Existe uma maneira eficiente e rápida para fazer esse > expurgo ? > > Alguma dica ? sugestão ? Exemplos ? > > Grato. > > Alex Maior > > 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] > > > [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] 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] 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]