root 에서 해줄 일이 끝났으니 root가 있는 localhost 라는 데베 말고 다른 데베를 만들어서 그 곳에서 web_user 라는 사용자로 테이블을 만들고 데이터 넣고 빼고 쿼리문 연습을 해보자.
데이터베이스( 자바에서 패키지) 의 테이블은 자바에서의 클래스라고 생각하면 쉽다.
테이블 생성, 수정, 삭제는 DDL(데이터 정의어) - CREATE / ALTER / DROP 로 한다.
1. 테이블 생성
테이블 생성 (CREATE)
CREATE TABLE [테이블 이름]( [컬럼명] [데이터 타입] [사이즈] );
- [컬럼명] [데이터 타입] [사이즈] 은 한 세트.
- 테이블에 넣을 컬럼끼리는 콤마로 구분한다.
- 마지막 컬럼 뒤에는 콤마를 붙이지 않는다.
- 쿼리문 마지막에 세미콜론 주의!
- 줄바꿈, 들여쓰기는 보기 좋기위해 하는 것이다. 해주는 게 가시성에 좋은 듯 하다.
테이블 생성 쿼리문에 [컬럼명] [데이터 타입] [사이즈] 가 있는데 자세히 알아보자.
1. 데이터타입
데이터 타입에는 크게 문자, 숫자, Boolean, 날짜 타입이 있다.
1) 문자타입
- 검색 속도가 가장 빠르다. 왜냐면 인덱스라는 걸 쓰는데 그게 문자에 최적화 되어있음
- 문자 하나 = 3byte
- 고정형(CHAR(바이트)) - 크기를 지정하면 변하지 않는다.
- 가변형(VARCHAR(바이트)) - 크기를 지정해도 그보다 작은 값이 들어오면 줄어든다.
- TEXT(큰 문자열) - 65,535 byte
- LONGTEXT(더 큰 문자열) - 4,294,967,296 byte
char 과 varchar 의 차이점은
만약 char(6) 과 varchar(6) 으로 필드 생성을 해놓고
필드에 4byte 만 들어갔다면 varchar는 2byte를 줄이고 4byte만 차지하고 있는데
char는 몇 바이트가 들어오든지간에 6byte를 차지하고 있다. (메모리 낭비)
2) 숫자타입
- int, float, double, bigint
3) BOOLEAN
- 참, 거짓
4) 날짜 타입
- DATE <- 0000-00-00
- DATETIME <- 0000-00-00 00:00:00
- TIMESTAMP <- DATETIME 과 같다. 하지만 time zone(서버 시간) 에 따라 시간이 변경 된다.
- default CURRENT_DATE <- 현재 날짜(CURRENT_DATE) 를 기본(default)으로 한다.
테이블 구조 확인
desc [이름];
<연습해보기>
쿼리문
콤마를 앞에 붙이는 거는 강사님이 알려주신 꿀팁.
마지막 필드에는 콤마 붙이면 안되는데 적다보면 붙어있어서 오류가 나기 때문에
앞에 적는 습관 들이는 것도 좋다고 하셨다.
테이블 목록 확인하기
show tables;
2. 테이블 삭제
테이블 삭제 (DROP)
DROP TABLE [이름];
3. 테이블 수정
테이블 수정 (ALTER)
1) 컬럼의 이름 바꾸기 (기존 데이터가 삭제 될 수 있으니 주의)
ALTER TABLE [테이블 이름] RENAME COLUMN [변경 전 이름] TO [변경 후 이름];
2) 컬럼 추가
ALTER TABLE [테이블 이름] ADD ([컬럼명] [데이터타입]([사이즈]));
3) 테이블 속성 변경 (기존 데이터가 남아 있으면 안된다.)
- 테이블 속성 변경은 특정 컬럼의 데이터타입이나 사이즈를 변경
- 테이블 데이터 변경과 헷갈렸었는데 주의하기!
- 테이블 속성 수정 = alter / 테이블 데이터 수정 = update
4) 컬럼 삭제
ALTER TABLE [테이블 이름] DROP COLUMN [컬럼명];
삭제라고 하니까 DROP 이랑 헷갈렸는데
테이블 삭제 = DROP / 테이블의 컬럼 삭제 = ALTER, DROP
'Data > MariaDB' 카테고리의 다른 글
DB] DML 2 - SELECT (0) | 2022.04.28 |
---|---|
DB] DML 1 - INSERT / UPDATE / DELETE / UPSERT (0) | 2022.04.28 |
DB] DBeaver 사용 (0) | 2022.04.28 |
DB] DDL(데이터 정의어) / root - 유저 생성, 권한 설정 (0) | 2022.04.28 |
DB] Maria DB , DBeaver 설치 (0) | 2022.04.25 |