Zrobiłbym co następuje:
- Umieść logikę sprawdzania poprawności danych w procedurze składowanej
- Uczyniono procedurę składowaną jedynym sposobem interakcji aplikacji z tabelą
- Umieść żądany kod w procedurze składowanej.
Paradygmat programowania opartego na wyzwalaczach staje się zbyt trudny do kodowania i utrzymania wraz ze wzrostem złożoności logiki biznesowej aplikacji.
Jeśli jednak masz absolutną pewność, że będziesz mieć tylko taką prostą logikę, możesz umieścić ją w wyzwalaczu, ponieważ będzie to wymagało minimalnych zmian w sposobie interakcji aplikacji z bazą danych.