Hi, I suspect that I can only achieve the desired outcome of my problem by creating a Trigger on the table. However, I wonder if I can achieve the same outcome with a Check Constraint on the table. I have a contact table which has a Primary Key column (ContactId), a Surrogate Key column for the Customer (CustomerId) and a Contact Type column (ContactTypeId). I have a requirement to ensure that for any Customer, that a maximum of only one Contact Type is permitted for some of the Contact Types. I cannot create a Unique Constraint on the CustomerId and ContactTypeId because the rule is only specific to a few Contact Types. All other Contact records do not have to comply to the rule, i.e. a Customer may have any number of Contact records for the remaining Contact Types. I need to ensure that the rule is enforced for both inserts and updates to the Contact table. Is this possible in SQL Server 2000? I know you can create Check Constraints which compare column values against values, but is it possible to compare the proposed values against existing ones as per my rule. According to MSDN for SQL Server 2005 you can use a Function within a Check Constraint, but it would seem that you cannot with SQL Server 2000.