In SQL Server, there are typically six types of constraints that can be used to enforce data integrity rules. These constraints are as follows:
1. Primary Key Constraint: Ensures that each value in a column or a combination of columns is unique and not null. It is used to identify each row uniquely in a table.
2. Unique Constraint: Ensures that each value in a column or a combination of columns is unique. Unlike the primary key constraint, it allows null values (except for columns included in the constraint).
3. Foreign Key Constraint: Establishes a relationship between two tables by enforcing referential integrity. It ensures that values in a column (foreign key) of one table match the values in a primary key column (referenced key) of another table.
4. Check Constraint: Enforces that the values in a column meet specific conditions or expressions. It allows you to define custom rules to restrict the values stored in a column.
5. Default Constraint: Sets a default value for a column when no value is specified during an INSERT operation.
6. Not Null Constraint: Ensures that a column does not contain null values. It requires a value to be provided for the column during an INSERT operation.
Therefore, the correct answer is C) 6.