Oi André, tento estudar o máximo possível antes de fazer alguma pergunta ao
grupo,
mas confesso que sou totalmente inexperiente no postgresql, ou seja,
confesso que
estou tendo dificuldades em entender o seu exemplo:
Quando há uma violação, conforme o seu exemplo, o processamento irá
continuar?
e as mensagem de violação, como fasso para ignora-las ou invia-las para um
"lixo"
temporário?
Se puder continuar me ajudando, fico agradecido!

Valeu!

2009/8/20 Andre Fernandes <[email protected]>

> Como disse antes, podes usar uma trigger para ignorar registros duplicados
> durante a inserção, dessa forma se o registro já existir na base de dados, a
> trigger ignoraria esse comando. Dessa forma, não terias problemas de
> duplicidade alguma.
>
> Abraços,
> André.
>
>   2009/8/20 MIGUEL JOSE DE LIMA <[email protected]>
>
>> Caro colega, talvez eu não expliquei direito: Eu não desejo registros
>> duplicados!!!
>> Então, não basta deletar a constraint. E por outro lado eu não tenho
>> conhecimento suficiente para afirmar que há uma aberração em outro produto,
>> mas tenho conhecimento suficiente para dizer que em muitos processamentos a
>> INSERSSÃO DE REGISTROS ignorando os erros de duplicidades é muito mais
>> rapido, sem ter a necessidade de
>> verificar a duplicidade da chave e inclusive a do registro!
>>
>> Mas valeu, Muito Obrigado
>>
>>  2009/8/20 Roberto Mello <[email protected]>
>>
>>> 2009/8/20 MIGUEL JOSE DE LIMA <[email protected]>:
>>>
>>>  > Pessoal,
>>> > Em um procedimento para inserir várias linhas/registros (INSERT ...
>>> SELECT
>>> > ....) como
>>> > posso contornar o erro de chave duplicada, sem interromper o
>>> > processamento???
>>> >
>>> > Pesquisei na lista e não achei nada. E através do google achei um
>>> exemplo
>>> > que utiliza uma SubQuery
>>> > com a clausula "NOT IN (SELECT ...)". Será que esta é a melhor forma?
>>> > Não existe nada parecido com o "INSERT IGNORE ..." do MySQL?
>>> (Postgresql 8.3
>>>  > ou 8.4)
>>>
>>> Não. Esse tipo de aberração grotesca só se vê num produto como o MySQL.
>>>
>>> Se quiser o mesmo efeito no PostgreSQL, faça um DROP na constraint,
>>> faça suas inserções, e depois re-crie a chave ou constraint.
>>>
>>> Roberto
>>> _______________________________________________
>>> 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
>>
>>
>
>
> --
> André de Camargo Fernandes
>
>
>
> _______________________________________________
> 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

Responder a