Tenho o seguinte problema:

Faço um select na tabela B na qual retorna dados. Depois faço um delete e 
retorna 0 rows affected. Refaço o select e os dados ainda estão lá.

Caso: 

A tabela B possui chave estrangeira para a tabela A. 
Esta chave está ON DELETE CASCADE. 
Mas a tabela B possui uma Trigger BEFORE DELETE,(Nesta trigger em dado momento 
não está fazendo um RETURN NULL;?) na qual não deixa deletar por um determinado 
motivo. 
Olha que estranho, esse dado que estou tentando deletar não está na tabela 
A(chave)(Isto pode ter ocorrido pois a regra da trigger impediu que a chave 
fizesse o delete em cascata.). 
Concluí que houve um delete na tabela A que não conseguiu deletar por cascata 
na tabela B e agora travou os dados na tabela B.(cheque bem a sua regra de 
negócio (trigger). Bem provável que pelos sintomas apresentados ela esteja 
impedindo que sua chave estrangeira exclua em cascata.)

Como resolvo isso? esse problema tá gerando um transtorno enorme para nós 
aqui...

Um abraço a todos.





Wellington

_______________________________________________
Atenciosamente, Rieg
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Reply via email to