1. DDL
- Data Definition Language(데이터 정의어)
- create : 테이블 생성
- drop : 테이블 삭제
- alter : 테이블 수정
2. 테이블 생성, 삭제, 수정
- 테이블 생성
create table 테이블명 (
컬럼명1 자료형 [제약조건],
컬럼명2 자료형 [제약조건],
...
); * unique : 고유한 값만 삽입될 수 있도록 하는 제약조건
* not null : 비어있을 수 없도록 하는 제약조건 - 테이블 삭제
drop table 테이블명; - 테이블 수정
alter table 테이블명;- 테이블명
rename to 테이블명 - 컬럼수정
- 컬럼추가 : add(컬럼명 자료형 [제약조건])
- 컬럼수정 : modify 기존컬럼명 새로운자료형
- 컬럼삭제 : drop 기존컬럼명
- 테이블명
3. unique, primary key, foreign key
- unique VS primary key
- unique는 개발자가 실수를 해서 데이터가 중복되게 들어가는 것을 방지하게 하기 위해 사용하는 것이고
- primary key는 unique처럼 방지도 있지만 거기에 더해 상징성을 더해준다. - foreign key
constraint 제약조건명 foreign key(부여할컬럼) references 참고테이블(참고할컬럼)
- 보통 데이터에서 부모-자식관계를 형성시킬 때 자식 테이블에서 부모 테이블을 참조함
- 값 추가 / 테이블 생성 : 부모 먼저
- 값 삭제 / 테이블 삭제 : 자식 먼저 * primary key : 각 칼럼을 구별하게 해주는 기본키(중복 안되고 비어있을 수 없다.)
* car_owner_fk 이름이 가진 owner 테이블의 id를 참조하는 car의 id 외래키
4. 모델링
- 추상적인 주제를 DB에 맞게 설계하는 것
- 수강신청 모델링
1. 요구 분석
- 수강을 신청하려면 수강을 신청하는 학생 정보와 과목 정보가 필요하고 수강 신청한 리스트와 한 과목이 여러 강의로 되어 있을 수 있기 때문에 따로 시간표 테이블이 필요하다.
2. 개념적 설계
3. 논리적 설계
4. 물리적 설계 및 구현
'웹개발 > DBMS' 카테고리의 다른 글
[JDBC] JDBC 기초, 구현 (0) | 2022.04.15 |
---|---|
[DB] group by, having 조건절, limit, JOIN, 서브쿼리 (0) | 2022.04.15 |
[DB] Auto_increment, date, like 조건식, 함수 (0) | 2022.04.15 |
[DB] DML(Data Mainpulation Language), where 조건절, binary(), md5 (0) | 2022.04.15 |
[DB] DB 기초, DB 생성 및 삭제, 자료형 (0) | 2022.04.14 |