Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Does MySQL support check constraint? [duplicate]

Does MySQL support check constraint?

I am able to execute the following script in MySQL without error.

ALTER TABLE  EMP_DB_DESIGN_EXCEL  ADD (
   CONSTRAINT CHK_EMP_IS_ACTIVE CHECK (IS_ACTIVE IN ('Y','N')));

But it is not reflected if I query:

 SELECT * FROM information_schema.TABLE_CONSTRAINTS T where t.table_name='EMP_DB_DESIGN_EXCEL';
like image 564
Rakesh Goyal Avatar asked Feb 27 '23 12:02

Rakesh Goyal


1 Answers

So far as I can tell from past usage and the manual, MySQL only supports PRIMARY KEY, UNIQUE and FOREIGN KEY constraints, and these only if the table is an InnoDB table. Other storage types accept these constraints and store them after a fashion but do not enforce them. The kind of constraint you mention is not enforced; there appears to be some discussion on the MySQL website about it.

like image 125
Brian Hooper Avatar answered Mar 12 '23 19:03

Brian Hooper