* MySQL에서는 DATABASE와 SCHEMA가 같은 뜻을 의미한다.
Table 생성
CREATE TABLE {table_name}();
* 제약 조건 키워드 (CONSTRAINTS)
- PRIMARY KEY
- AUTO_INCREMENT
- NOT NULL
- UNIQUE : 중복된 값을 저장할 수 없다.
- DEFAULT : 디폴드값을 설정할 수 있다.
- CHECK : 입력할 수 있는 값의 범위 등을 제한한다. TRUE or FALSE로 평가할 수 있는 논리식을 지정한다.
- FOREIGN KEY : CASCADE / SET NULL / RESTRICT [/ NO ACTION / SET DEFAULT]
CREATE TABLE {table_name}(
ㅤㅤ{field_name} {type} [NULL | NOT NULL][DEFAULT][AUTO_INCREMENT],
ㅤㅤ{field_name} {type} [NULL | NOT NULL][DEFAULT][AUTO_INCREMENT],
ㅤㅤ...
ㅤㅤPRIMARY KEY({field_name})
ㅤㅤ);
* EMPLOYEE2 테이블을 생성하는 예시
CREATE TABLE EMPLOYEE2(
ㅤㅤempno INTEGER NOT NULL PRIMARY KEY,
ㅤㅤname VARCHAR(10),
ㅤㅤjob VARCHAR(9),
ㅤㅤboss INTEGER,
ㅤㅤhiredate VARCHAR(12),
ㅤㅤsalary DECIMAL(7, 2),
ㅤㅤcomm DECIMAL(7, 2),
ㅤㅤdeptno INTEGER
ㅤㅤ);
Table 수정
ALTER TABLE {table_name} ~ ;
- ADD
- 컬럼을 추가한다.
ALTER TABLE {table_name}
ㅤㅤadd {field_name} {type} [NULL | NOT NULL][DEFAULT][AUTO_INCREMENT];
- DROP
- 컬럼을 삭제한다.
ALTER TABLE {table_name}
ㅤㅤDROP {field_name};
- CHANGE
- 컬럼을 이름부터 속성까지 전부 재정의한다.
ALTER TABLE {table_name}
ㅤㅤCHANGE {field_name} {type} [NULL | NOT NULL][DEFAULT][AUTO_INCREMENT];
- RENAME
- 테이블의 이름을 변경한다.
ALTER TABLE {table_name} RENAME {new_name};
Table 삭제
DROP TABLE {table_name};
제약 조건이 있을 경우에는 drop table 명령으로도 테이블이 삭제되지 않을 수 있다.
그런 경우에는 테이블을 생성한 반대 순서로 삭제를 해야 한다.
테이블 목록 확인
show tables;
테이블 구조 확인
desc {table_name};
'공부 기록 > Database' 카테고리의 다른 글
쿼리 안의 쿼리(서브쿼리) (0) | 2023.05.02 |
---|---|
DML - 데이터 조작하기 (0) | 2023.01.19 |
Database 생성, 접속하기 (0) | 2023.01.19 |
Database 사용자 생성과 권한 부여 (0) | 2023.01.18 |
RDBMS _ 관계형 데이터베이스 (0) | 2023.01.18 |