Foreign Key 2

MySQL) 외래키를 걸었는데, 제약조건이 따라온 경우 문제해결.

User 테이블에 userid 컬럼이 있고, 이 컬럼에는 not null과 unique 제약조건을 걸었다. Notice 테이블에 userid컬럼이 있고, User테이블의 userid와 외래키를 걸었다. 그런데.... 외래키를 걸었더니 User테이블의 userid제약조건인 nn과 unique를 그대로 들고와서 걸렸다. 게시판에는 한 유저가 많은 글을 쓸 수 있어야 하는데 unique가 걸려서 한 유저당, 하나의 글밖에 못쓰는 상황이 된 것이다. 따라서 위의 사진에서 unique에 체크 표시를 풀고 Apply버튼을 눌렀지만 승인되지 않았다.. 구글링을 해도 Foreign key와 unique관계를 뚜렸하게 설명하는 글을 찾기 힘들었다. MySQL을 배운지 얼마되지 않아서 봐도 이해를 못한것일 수도..ㅎㅎ 외..

Database/MySQL 2022.03.24

Oracle DB) 제약 조건: Primary Key, Foreign key, Unique, Not Null, Check

제약조건이란? 데이터의 무결성을 지키기 위한 제한된 조건. 특정 데이터를 입력 할 때 무조건 입력되는 것이 아닌, 지정한 조건을 만족했을 때 입력되도록 제약한다. 종류: Primary key, Foreign key, Unique, Not Null, Check 제약조건 선언 시기 1) 데이블 생성 시: create구문으로 테이블 선언 시. 2) 테이블 생성 후: alter 구문으로 수정한다. 제약조건명 사용자(개발자)가 지정. 고유하고 의미있는 이름 부여. 권장 이름: 테이블명의 약자_컬럼명 약자_제약조건 유형의약자 ex) emp_empid_pk emp_email_uk dept_dname_nn dept_sal_f => 한글자씩으로만 줄여써도된다. 잘 알아볼 수 있도록 편리하게! 제약조건명은 생략할수 있다...

Database/Oracle 2022.03.15
반응형