It does not implement full domain support as described in Codd and Date's relational writings. It is also possible to support user-defined integrity in SQL Server through the use of triggers. Each trigger is attached to a single, specified table. Although triggers are often used for implementing referential integrity, there are many practical reasons for using triggers to implement user-defined integrity. For example, the business rule may be too complex to support using a rule or check constraint.
Triggers offer a flexible vehicle for the specification of user-defined integrity.
Complex strings of instructions can be coded and stored within the DBMS as a trigger. Whenever data is added, removed, or modified, the logic in the trigger will be executed to ensure the required integrity constraints are maintained. Synopsis SQL Server 10 provides a wealth of mechanisms for supporting user-defined relational integrity. Developers would be wise to utilize these features to develop robust applications that provide system-manage data integrity, promote reusability, and provide consistent data structures. From DBMS Magazine , November 1994 .