예제) IT회사 관련 RDB만들기
- 부서, 사원, 프로젝트 관련 정보들을 저장할 수 있는 관계형 데이터베이스를 만들자
- 사용할 RDBMS는 MySQL(InnoDB)
데이터베이스 생성
// 현재 데이터베이스가 어떤것들이 있는지 보여준다
SHOW DATABASES;
// company라는 데이터베이스 생성
CREATE DATABASE company;
// 현재 선택된 데이터베이스를 알려준다 없을때는 NULL
SELECT database();
// company데이터베이스 사용
USE company;
데이터베이스 삭제
DROP DATABASE company;
테이블 생성
//DEPARTMENT 테이블 생성
//attribute name, data type, constrains
create table DEPARTMENT(
id INT PRIMARY KEY,
name VARCHAR(20) NOT NULL UNIQUE,
leader_id INT
);
//EMPLOYEE 테이블 생성
create table EMPLOYEE(
id INT PRIMARY KEY,
name VARCHAR(30) NOT NULL,
birth_date DATE,
sex CHAR(1) CHECK(sex in('M','F')),
position VARCHAR(10),
salary INT DEFAULT 50000000,
dept_id INT,
FOREIGN KEY (dept_id) references DEPARTMENT(id)
on delete SET NULL on update CASCADE,
CHECK (salary >= 50000000)
);
테이블 수정
//department 테이블 수정(FOREIGN KEY 설정)
ALTER TABLE department ADD FOREIGN KEY (leader_id)
references employee(id)
on update CASCADE
on delete SET NULL;
출처: 쉬운코드
'STUDY > database' 카테고리의 다른 글
| [MySQL] 데이터 추가, 수정, 삭제 (0) | 2023.11.23 |
|---|---|
| [DB] constrains(제약사항) 설정 (0) | 2023.11.21 |
| SQL의 개념 (2) | 2023.11.21 |
| 키(key)의 종류, constraints 종류 (0) | 2023.11.20 |
| 관계형 데이터베이스 (0) | 2023.11.20 |