Constraints enforce rules at the table level to maintain data integrity. The main types of constraints are NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY, and CHECK. Constraints can be created at table creation or added later using ALTER TABLE. Constraint information is stored in data dictionary views like USER_CONSTRAINTS and USER_CONS_COLUMNS which can be queried.