How to Enable All CHECK & Foreign Key Constraints in a Database in SQL Server (T-SQL Examples)

You can use the code below to enable all CHECK and foreign key constraints for the current database in SQL Server.

When you enable a CHECK or foreign key constraint, you have the option of checking existing data in the table before the constraint is enabled. Doing this allows you to verify whether or not any existing violates the constraint. To perform this check, use WITH CHECK within the code, otherwise use WITH NOCHECK.

Continue reading

How to Enable All CHECK & Foreign Key Constraints for a Table in SQL Server (T-SQL Examples)

You can use the code below to enable all CHECK and foreign key constraints for a specific table in SQL Server.

When you enable a constraint in SQL Server, you need to decide whether it should check any existing data or not. This is an important consideration if the table already contains data, because that existing data may potentially violate the constraint’s rules.

Continue reading

How to Disable a CHECK Constraint in SQL Server (T-SQL Examples)

When you attempt to enter data into a table that has a fully enabled CHECK constraint, you will only be successful if the data doesn’t violate that constraint. If you attempt to enter invalid data, the operation will fail with an error.

But what if you find yourself in the situation where you really must insert data that will violate the CHECK constraint? Perhaps the constraint no longer applies, or maybe you have an exception where one row is allowed to bypass the constraint. Either way, you won’t be able to enter anything outside the rules of the constraint.

If you find yourself in this situation, you can always disable the constraint. Here’s how to do that using Transact-SQL.

Continue reading

How to Enable a CHECK Constraint in SQL Server (T-SQL Example)

If you have a CHECK constraint in SQL Server that is currently disabled, you can use the code below to re-enable it.

When you enable a CHECK constraint (or a foreign key constraint for that matter), you have the option to specify whether or not to check any existing data in the table.

Below are code examples of enabling a CHECK constraint, while specifying each of these different options.

Continue reading

How to Create a CHECK Constraint in SQL Server (T-SQL Examples)

In SQL Server you can create a CHECK constraint in a table to specify the data values that are acceptable in one or more columns.

If a table has a CHECK constraint on it, and you try to provide data that doesn’t conform to the CHECK constraint, the operation will fail with an error.

This helps to maintain data integrity, because it helps to prevent invalid data from entering the database.

When you create a CHECK constraint, you provide a logical expression that returns TRUE or FALSE. This logical expression is what’s used to check the data.

CHECK constraints are similar to foreign key constraints because they control the values that are put in a column. However, the difference is in how they determine which values are valid: Foreign key constraints obtain the list of valid values from another table, while CHECK constraints determine the valid values from a logical expression.

Constraints can be defined at the column level or table level. A column-level constraint applies to just the data in that column. A table-level constraint applies to the whole row, and checks data from multiple columns.

Below are examples of creating both column-level and table-level CHECK constraints.

Continue reading

How to Create a Foreign Key in SQL Server (T-SQL Examples)

In this article I demonstrate how to create a foreign key in SQL Server using Transact-SQL. I demonstrate how to create a foreign key at the time of creating the table (as opposed to updating an existing table).

A foreign key is a column that references another table’s primary key column. This creates a relationship between the tables.

Continue reading

How to Create a Primary Key in SQL Server (T-SQL Examples)

This article demonstrates how to create a primary key in SQL Server when creating a table using Transact-SQL.

A primary key is one or more columns that have been configured as the unique identifier for a given table. Primary keys can be used to enforce data integrity in the table.

A table can only have one primary key, and primary keys can only be added to columns that are defined as NOT NULL.

This article demonstrates how to create a primary key in a new table (i.e. when creating the table). If you need to create a primary key in an existing table, see How to Add a Primary Key to an Existing Table in SQL Server.

Continue reading