전체 글 210

DBeaver)제3정규형 (3NF) & Foreign Key

제1, 제2에 이어서 제3정규형도 있는데 만드는 법을 알아봅시다.      제3정규형 (3rd normal form) 제2정규형을 만족하는 테이블에서 primary key 또는 composite primary key 컬럼에 종속된게 아닌하찮은 잔챙이 컬럼에 종속된 컬럼을 다른 테이블로 빼면그게 제3정규형 테이블입니다.    [체육센터 프로그램 table]프로그램가격강사출신대학스쿼시5000김을용서울대헬스6000박덕팔연세대골프8000이상구고려대골프 중급9000이상구고려대개인피티6000박덕팔연세대 ▲ 대충 제2정규화해놓은 테이블을 가져왔습니다. 제2정규형을 만족하기 때문에 partial dependency는 없어보이는군요. 하지만 '출신대학'이라는 컬럼에 주목해봅시다. '프로그램'이라는 primary key와..

Mysql&DBeaver 2024.09.06

DBeaver)정규형 알면 DB 설계 가능 (1NF, 2NF)

사람들이 SQL 배울 때 JOIN 문법을 매우 어려워합니다. 그거 배우다보면 의문도 많이 생기고 왜 테이블을 애초에 여러개로 나눠놓는지 이해도 안가고 약간 반발심이 생길텐데 오늘 설명할 정규화/정규형이라는걸 배우게 되면 매우 쉬워집니다. 배워두면 나중에 DB 설계도 도움없이 알아서 잘할 수 있음      제1정규형 (1st normal form) 여러분은 지금부터 구민 체육센터 전산시스템 만드는 개발자입니다. 일단 체육센터에 수강 등록한 사람들을 테이블로 정리하고 싶은겁니다.  [수강등록현황 table]회원번호회원이름프로그램101강호동스쿼시초급102손흥민헬스103김민수헬스 그래서 테이블 하나 만들어서 이쁘게 잘 저장을 해놨습니다. 근데 '김민수' 라는 사람이 다음 날 '골프초급'을 또 수강신청한겁니다.그..

Mysql&DBeaver 2024.09.06

DBeaver)컬럼에 안전하게 제약 (Constraints) 주기

컬럼에 Constraints (제약조건) 주기 컬럼만들 때 제약조건을 걸어둘 수 있습니다. - 이 컬럼은 NOT NULL 해야한다 (텅빈 데이터 집어넣지 말아라)- 이 컬럼에 있는 데이터들은 항상 UNIQUE 해야한다 - 여기에 음수말고 양수만 들어오는지 CHECK 하라- 이 컬럼을 PRIMARY KEY로 설정하라등 여러가지 설정이 가능합니다.    1. NOT NULL 제약조건 CREATE TABLE new_table ( id INT NOT NULL, 이름 VARCHAR(100) NOT NULL, 나이 INT) 컬럼 만들 때 우측에 NOT NULL을 체크해주면 NULL 금지라는 제약을 걸 수 있습니다.원래 데이터넣을 때 까먹고 안넣으면 자동으로 NULL이 됩니다. 텅비어있다는 뜻임 그래..

Mysql&DBeaver 2024.09.06