Instead of being attached to a single column, the constraint is attached to the entire table. It is usually sufficient to code a check constraint at the column level. However, there are situations where table-level check constraints are required. Any time two columns of the table need to be specified in the constraint, a table-level check constraint is required. In addition to check constraints Microsoft provides rules.
Rules are free-standing database objects that can be used to enforce data integrity.
This is desirable because it promotes reusability . Check constraints always must be defined within the scope of a table. Rules define the parameters for data validation. Once bound, similar to a check constraint, whenever data is inserted or updated, the rule is checked to ensure that the data modification complies with the rule. Both columns and user-defined data types can have rules defined for them.