조회
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/
'SQL > RDBMS' 카테고리의 다른 글
[MariaDB] 환경 구축 (생성, 삭제, 권한, 백업) (0) | 2023.04.25 |
---|---|
ORA-01722: 수치가 부적합합니다 (0) | 2023.03.17 |
[Oracle] 제약 조건 (조회, 추가, 수정, 삭제) (0) | 2023.03.16 |
java.sql.SQLSyntaxErrorException: ORA-00911: 문자가 부적합합니다 (1) | 2023.03.14 |
[MySQL/MARIADB, MSSQL, ORACLE] DB별 예약어나 특수문자가 포함된 컬럼명 표현, 네이밍 규칙 (0) | 2023.03.14 |