Hoje falaremos um pouco sobre performance:
Em especifico melhoras no modulo de NESTED TRIGGERS DO SQL SERVERConfiguração permite o uso ou não de triggers aninhadas. Por padrão é configurada a opção 1, que significa que o uso de triggers aninhadas está ativo. Sabemos que eles consomem uma boa parte do processamento de uma transação, então caso deseje que os desenvolvedores não usem este tipos de triggers, basta setar esta configuração para o valor 0.
EXEC SP_CONFIGURE 'nested triggers', 0
GO
RECONFIGURE WITH OVERRIDE
GO
Lição De Casa: https://msdn.microsoft.com/pt-br/library/ms190739
Se gatilhos aninhados forem permitidos e um gatilho na cadeia iniciar um loop infinito, o nível de aninhamento será excedido e o gatilho será encerrado. Podemosusar gatilhos aninhados para executar funções de manutenção úteis, como armazenar uma cópia de backup de linhas afetadas por um gatilho anterior. Por exemplo, você pode criar um gatilho em PurchaseOrderDetail que salva uma cópia de backup das linhas de PurchaseOrderDetail que o gatilho delcascadetrig excluiu. Com o gatilho delcascadetrig em vigor, excluirPurchaseOrderID 1965 de PurchaseOrderHeader exclui a linha correspondente dePurchaseOrderDetail. Para salvar os dados, você pode criar um gatilho DELETE emPurchaseOrderDetail que salva os dados excluídos em outra tabela criada separadamente,del_save. Por exemplo:
CREATE TRIGGER Purchasing.savedel ON Purchasing.PurchaseOrderDetail FOR DELETE AS INSERT del_save; SELECT * FROM deleted;
Nenhum comentário:
Postar um comentário