SQL/RDBMS

[mariaDB] 제약 조건(조회, 추가, 수정, 삭제)

dddzr 2023. 3. 17. 11:07

 

조회

SELECT * from information_schema.table_constraints FROM TABLE_NAME = '{테이블명}'

*위 쿼리를 실행했을 때 결과

 

그런데 이렇게 실행하면 모든 TYPE의 제약조건이 나오지만

CONSTRAINT_TYPE이 CHECK인 제약조건의 내용을 볼 수 없습니다.

내용을 확인하기 위해서는 아래의 쿼리문을 실행해야 합니다.

SELECT * from INFORMATION_SCHEMA.CHECK_CONSTRAINTS
WHERE TABLE_NAME = '{테이블명}'

*위 쿼리를 실행했을 때 결과

여기서 CHECK_CLAUSE가 CHECK 제약조건의 내용입니다.

 

추가

ALTER TABLE {테이블명} ADD CONSTRAINT {제약조건명} {제약조건} 
--예시
ALTER TABLE t ADD CONSTRAINT a_upper CHECK (a<100);

 

삭제

ALTER TABLE {테이블명} DROP CONSTRAINT {제약조건명};
--예시
ALTER TABLE t DROP CONSTRAINT CONSTRAINT_1;

 

참고

https://mariadb.com/kb/en/information-schema-check_constraints-table/

 

Information Schema CHECK_CONSTRAINTS Table

Supported check constraints.

mariadb.com