oracledba.help
Schema

Constraints

Common Types

PRIMARY KEY (PK) - A combination of a NOT NULL and UNIQUE. Ensures that a column (or combination of columns) have an unique identity which helps to find a particular record in a table more easily and quickly.

CHECK (CHK) - Ensures that the value in a column meets a specific condition.

FOREIGN KEY (FK) - Ensure the referential integrity of the data in one table to match values in another table

NOT NULL (NN) - Indicates that a column cannot store a NULL value.

UNIQUE (UNQ) - Ensures that each row for a column must have a unique value.

Create

ALTER TABLE
   table_name
ADD CONSTRAINT
   check_constraint_name
   CHECK 
   (check_column_name IN 
      (
       'check_constraint1_value',
       'check_constraint2_value',
       'check_constraint3_value',
       'check_constraint4_value'
      )
   ) DISABLE|ENABLE;
ALTER TABLE
   cust
ADD CONSTRAINT
   fk_cust_name FOREIGN KEY (person_name, person_gender)
REFERENCES
   person_table (person_name, person_gender)
INITIALLY DEFERRED deferrable;

Display

-- Total Constraints For Schema

SELECT count(*) FROM all_constraints 
WHERE owner = &SchemaName;

-- User Constraints that are not ENABLED

SELECT owner,table_name,constraint_name 
FROM all_constraints 
WHERE owner NOT IN ('SYS','SYSTEM')
AND  status != 'ENABLED'
ORDER BY owner,table_name,constraint_name;

Drop

ALTER TABLE [Schema].TableName DROP CONSTRAINT ConstraintName;

ALTER TABLE HR.EMPLOYEE DROP CONSTRAINT 'EMPLOYEE_PK';

Enable|Disable

ALTER TABLE [Schema].TableName ENABLE  CONSTRAINT ConstraintName;
ALTER TABLE [Schema].TableName DISABLE CONSTRAINT ConstraintName [CASCADE];
ALTER TABLE hr.emp DISABLE CONSTRAINT chk_BusinessUnit;

<- Schema