Carregando ...
Desculpe, ocorreu um erro ao carregar o conteúdo.

33169RES: [mssql-l] Sp para excluir registro

Expandir mensagens
  • Dalmiro
    25 de jan 07h58min

      Ok...obrigado João Polisel

       

       

      De: mssql-l@... [mailto:mssql-l@...]
      Enviada em: segunda-feira, 25 de janeiro de 2016 00:12
      Para: mssql-l@...
      Assunto: RE: [mssql-l] Sp para excluir registro

       

       

      Boa noite Dalmiro,

       

      Alterar a constraint para delete cascade pode ser feito removendo-a e adicionando de volta com esta opção, mas eu não recomendaria pois pode trazer impacto a outras partes do código. Você terai que testar isso muito bem!

       

      Você pode criar sua SP para trabalhar com uma transação onde você apaga cada uma das tabelas filhas (DELETE tbFilha FROM tbPai WHERE <join entre pai e filha> AND <critéria de busca do registro na tabela pai>) e em seguida apaga a tabela pai.

       

      Use TRY CATCH para controlar erros que podem acontecer durante a execução e executar COMMIT ou ROLLBACK

       

      []s

       

      João Polisel

       

      From: mssql-l@... [mailto:mssql-l@...]
      Sent: Friday, January 22, 2016 1:19 PM
      To: mssql-l@...
      Subject: [mssql-l] Sp para excluir registro

       

       

      Boa tarde pessoal,

      Tenho que criar uma sp, para exclusão de registros, mas a tabela principal tem relação com outras 2 tabelas e estas relações não foram criadas com referencias on delete cascade.

      Dúvidas

      1 – Posso recriar a contraint com esta referencia? Como?

      2 – Uma saída é fazer um select e depois loop e deletar os registros das tabelas relacionadas e depois a principal, é uma boa saída?

      3 – Para opção 2 como faço para colocar transação pois acho melhor para cada volta do loop, fazer o controle da transação, e uma boa?

      4 – Alguma dica?

       

      Obrigado

      att

       

      Este e-mail foi enviado por um computador sem vírus e protegido pelo Avast.
      www.avast.com

      Este e-mail foi enviado por um computador sem vírus e protegido pelo Avast.
      www.avast.com
    • Mostrar todas as 13 mensagens neste tópico