테이블 외래키 조회 - teibeul oelaeki johoe

티스토리 뷰

1.foreign key 추가

alter table [추가할테이블명] add constraint [제약조건명] foreign key(컬럼명) references [부모테이블명] (PK컬럼명) [ON DELETE CASCADE / ON
UPDATE CASECADE];

2. foreign key 삭제

alter table [테이블명] drop foreign key [제약조건명];

3. foreign key 확인 방법

3.1 테이블 기준 확인
select * from information_schema.table_constraints where table_name = '테이블명';
3.2 데이터베이스 기준 확인
select * from information_schema.table_constraints where constraint_schema = '데이터베이스명';

MySQL MariaDB/DB,Table 정보

2021. 8. 13.

테이블 외래키 조회 - teibeul oelaeki johoe

#---foreign key  참조정보 조회  (테이블별)

SELECT *

  FROM information_schema.key_column_usage 

WHERE  table_name = '테이블명';

#---foreign key 참조정보 조회  (테이터베이스 별)

SELECT *

  FROM information_schema.key_column_usage 

WHERE  constraint_schema = '테이블명';

CONSTRAINT_CATALOG 항상 #def.
CONSTRAINT_SCHEMA 제약 조건의 데이터베이스 이름
CONSTRAINT_NAME 제약 조건의 이름( PRIMARY기본 키의 경우).
TABLE_CATALOG 항상 #def.
TABLE_SCHEMA 열 제약 조건의 데이터베이스 이름
TABLE_NAME 열 제약 조건의 테이블 이름
COLUMN_NAME 제약 조건의 열 이름
ORDINAL_POSITION 제약 조건 내에서 열의 위치입니다.
POSITION_IN_UNIQUE_CONSTRAINT 외래키의 고유 제한 조건에 위치.
REFERENCED_TABLE_SCHEMA 외래 키의 경우 참조된 데이터베이스 이름입니다.
REFERENCED_TABLE_NAME 외래 키의 경우 참조된 테이블 이름.
REFERENCED_COLUMN_NAME 외래 키의 경우 참조된 열 이름

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

References : 외래키 조회

1. Query

SELECT uc.constraint_name, uc.table_name, ucc.column_name, uc.constraint_type, uc.r_constraint_name

FROM user_constraints uc, user_cons_columns ucc

WHERE uc.constraint_name = ucc.constraint_name;

2. Constraint_Type

 - P : Primary Key

 - R : Foreign Key

 - U : Unique

 - C : Not Null, Check

728x90

저작자표시

'Programming > Databse' 카테고리의 다른 글

[Oracle] 여러 데이터를 하나로 이어붙이기  (0) 2018.12.05
[iBatis] 동적쿼리 조건문.  (0) 2018.11.26
[Oracle] Where절 에서의 CASE .. WHEN .. THEN ..  (0) 2018.07.02
[Oracle] Error: 프로그램을 잘못된 형식으로 로드하려고 했습니다.  (0) 2018.06.12
[Oracle] 유저 및 테이블의 테이블스페이스 변경.  (0) 2017.11.15

개발자의 끄적끄적

개발/sql

[sql/mysql] mysql foreign key check example / mysql 외래키 확인 방법

효벨 2021. 8. 21. 02:00

[sql/mysql] mysql foreign key check example / mysql 외래키 확인 방법

mysql 에서

특정 테이블이나

데이터베이스 전체에 적용이 되어있는

foreign key 를 확인해야 하는 경우가 있습니다.

그럴때는 아래 쿼리로 확인이 가능합니다!

1. 특정 테이블에 생성되어 있는 foreign key 확인 방법

select * from information_schema.table_constraints where table_name = 'TABLE NAME';

2. 특정 데이터베이스에 생성되어 있는 foreign key 확인 방법

select * from information_schema.table_constraints where constraint_schema = 'DATABASE NAME';

참고들 하세요!