In some Microsoft SQL Server scripts you sometimes see something like this:
ALTER TABLE Table1
WITH CHECK ADD CONSTRAINT
FK_Table2_Table1 FOREIGN KEY (COL2)
REFERENCES Table2 (COL2);
ALTER TABLE Table1 CHECK CONSTRAINT FK_Table2_Table1;
Where the tables look something like this:
CREATE TABLE Table1
(COL1 int CONSTRAINT PK_Table1 PRIMARY KEY ,
COL2 int);
CREATE TABLE Table2
(COL2 int CONSTRAINT PK_Table2 PRIMARY KEY,
COL3 varchar(10)
);
As I understand it, the second statement:
ALTER TABLE Table1 CHECK CONSTRAINT FK_Table2_Table1;
doesn't do anything. Can anyone explain if there is a reason for it, and if so what it is for?
ALTER TABLE Table1
WITH CHECK ADD CONSTRAINT
FK_Table2_Table1 FOREIGN KEY (COL2)
REFERENCES Table2 (COL2);
ALTER TABLE Table1 CHECK CONSTRAINT FK_Table2_Table1;
Where the tables look something like this:
CREATE TABLE Table1
(COL1 int CONSTRAINT PK_Table1 PRIMARY KEY ,
COL2 int);
CREATE TABLE Table2
(COL2 int CONSTRAINT PK_Table2 PRIMARY KEY,
COL3 varchar(10)
);
As I understand it, the second statement:
ALTER TABLE Table1 CHECK CONSTRAINT FK_Table2_Table1;
doesn't do anything. Can anyone explain if there is a reason for it, and if so what it is for?