Desta forma eu ja tenho um programa pronto, porém quero testar a performace sem a conecção com o Java, deixar que o banco leia o arquivo e se vire, pq este arquivo cheio de inserts eu os formato no meu programa Java mesmo.
Só que estou tendo um problema com addBatch() e executeBacth(), pois se eu encontro um problema em uma linha dentro de um pacote de batchs, eu acabo perdendo o restante das linhas, por exemplo:
Se eu adicionei 100 linhas com addBatch() e mando o executeBatch() e ele encontra um problema na linha 59, as outras 41 linhas são perdidas e isso eu nao estou conseguindo arrumar.
Ai pensei em adicionar direto para o banco, vindo de um arquivo ja formatado, que desta forma se o banco encontrasse algum erro, ele simplismente iria passar por cima e ignora-lo.
Entende meu problema? E o que estou tentando fazer?
O COPY pára de executar no primeiro erro, o que não deve causar problemas no caso do COPY TO, mas a tabela de destino já terá recebido as linhas anteriores no caso do COPY FROM. Estas linhas não são visíveis nem acessíveis, mas ainda assim ocupam espaço em disco, podendo causar o desperdício de uma quantidade considerável de espaço em disco se o erro ocorrer durante a cópia de uma grande quantidade de dados. Deve ser executado o comando VACUUM para recuperar o espaço desperdiçado.