Entendi! Valeu mesmo!!! 2010/5/13 André Volpato <[email protected]>
> > Passo5: Por fim, no arquivo .csv gerado, o número de linhas não foi nem 0 > (zero) e nem 1.840.161 (o total de registros na tabela) > > /tmp$ cat saida.csv | wc -l > 479700 > > > Como na utilização do comando COPY ocorre tudo dentro de uma transação (é > tudo ou nada) porque obtive este resultado? > > > > > > O comando "COPY FROM" é totalmente feito em uma transação, e o controle de > toda a operação é feito internamente pelo Postgres. > > É como se fosse um comando assíncrono, a carga é feita para uma área > temporária, e depois os dados são inseridos na tabela, ou tudo ou nada. > > > Já o comando "COPY TO" não é 100% controlado pelo Postgres, e sim pelo SO. > Assim que o COPY inicia, o papel do Postgres é mandar gravar o arquivo, que > é gerenciado pelo SO. Então este é um comando síncrono, ou seja, cada envio > de dados do Postgres é gravado imediatamente pelo SO. > > Assim que você "matou" ou Postgres, o SO parou de gravar, mas o que estava > lá foi gravado. > > > > []´s, André Volpato > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
