Questa è una domanda più generale, ma la motivazione di questa domanda è stata un problema che ho riscontrato durante l'utilizzo di SQL Server.
Ho questo trigger collegato a un evento Insert su una tabella che contiene una logica che, come effetto collaterale, genererebbe un errore se non fossero inserite righe. Dopo ulteriori indagini, ho scoperto che il grilletto stava sparando nonostante nessuna riga fosse inserita.
Il linguaggio utilizzato in Microsoft Docs sui trigger DML sembra contraddire questo comportamento:
I trigger DML sono un tipo speciale di stored procedure che ha effetto automaticamente quando si verifica un evento DML che influisce sulla tabella o sulla vista definita nel trigger.
È un comportamento predefinito tra i DBMS? C'è un motivo particolare per attivare un trigger quando non sono interessate righe?