Bibi's DevLog ๐ค๐
[TIL-Codesquad] Docker, MySQL, SQL๊ณผ SQL ๊ธฐ๋ณธ ๋ฌธ๋ฒ ๋ณธ๋ฌธ
[210128]
์ค๋์ docker, MySQL์ ๋ํด ๊ณต๋ถํ๊ณ , ์ค์นํ๊ณ , SQL ์ธ์ด์ ๋ํด ์กฐ๊ธ ์ตํ๋ ์๊ฐ์ด์๋ค.
์ค์น๋ ์ด๊ธฐ ์ค์ , ๊ณต๋ถ ์ข ํ๋ ํ๋ฃจ๊ฐ ๋ค ๊ฐ๋ค๐ ํ๋ก๊ทธ๋จ ์ง๋ ๊ฑด ๋ด์ผ ์์นจ๋ถํฐ ์ด์ฌํ ํด์ผ๊ฒ ๋ค.
๋ฏธ์ ๋ชฉํ
๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ
์ ๋ค๋ฃจ๊ธฐ ์ํ ๊ธฐ์ด SQL๋ฌธ๋ฒ ์ตํ๊ธฐ
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ๋ณธ๊ฐ๋
, ๋์ ์ดํดํ๊ธฐ (MySQL ๊ถ์ฅ)
TIL
๋์ปค๋ ๋ฌด์์ธ๊ฐ?
๋ฐฐ๊ฒฝ
์๋ฒ ๊ด๋ฆฌ๋ฅผ ๋ ๋ณต์กํ๊ณ ํธํ๊ฒ ํ๊ธฐ ์ํด ๋ฑ์ฅํจ.
์ผ๋ฐ์ ์ผ๋ก ์๋ฒ ์ปดํจํฐ์ OS, ํ๋ก๊ทธ๋จ, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ์ ์ค์น/์์ ํ๋ ๊ฒ์ ์๋ฌ, ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์๋ค. OS/ํ๋ก๊ทธ๋จ/๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ฃผ๊ธฐ์ ์ผ๋ก ์
๋ฐ์ดํธํด์ผ ํ๋ฉฐ, ์๋ฒ ํ๊ฒฝ๋ ์๊ฐ์ด ํ๋ฅด๋ฉด์ ์กฐ๊ธ์ฉ ๋ฐ๊ฟ์ฃผ์ด์ผ ํ๋ฏ๋ก ์๋ฒ๋ฅผ ๋ค๋ฃจ๋ ์์
์ ๋ถ๊ฐํผํ๋ฉด์๋ ๋ฆฌ์คํฌ๊ฐ ํฐ ์์
์ด๋ค.
๋์ปคdocker๋?
๋์ปค๋ ์ปจํ ์ด๋ ๊ธฐ๋ฐ์ ์คํ์์ค ๊ฐ์ํ ํ๋ซํผ์ด๋ค.
์ปจํ
์ด๋ : ๊ท๊ฒฉํ๋์ด ์๋ค. ์์ ๋ค์ํ ๊ฒ๋ค์ ๋ฃ์ ์ ์๋ค. ์ฌ๋ฌ ์ด์ก์๋จ์ผ๋ก ์ฝ๊ฒ ์ฎ๊ธธ ์ ์๋ค
โ ๋ค์ํ ํ๋ก๊ทธ๋จ, ์คํํ๊ฒฝ์ ์ปจํ
์ด๋๋ก ์ถ์ํํ๊ณ , ๋์ผํ ์ธํฐํ์ด์ค๋ฅผ ์ ๊ณตํด ํ๋ก๊ทธ๋จ์ ๋ฐฐํฌ ๋ฐ ๊ด๋ฆฌ๋ฅผ ๋จ์ํ๊ฒ ํด ์ค๋ค.
์ด๋ค ํ๋ก๊ทธ๋จ๋ ์ปจํ
์ด๋๋ก ์ถ์ํํ ์ ์๊ณ , ์ด๋ค ์ปดํจํฐ/ํ๊ฒฝ์์๋ ์คํ ๊ฐ๋ฅํ๋ค.
โ ๋์ปค๋ฅผ ๊ฐ๋ฐํ๊ฒฝ์ผ๋ก ์ฌ์ฉํ๋ฉด ๊ฐ๋ฐ,ํ ์คํธ,์ด์์ ๋์ผํ ํ๊ฒฝ์์ ํ ์ ์๊ฒ ๋๋ค.
์ปจํ ์ด๋ container
์ปจํ ์ด๋๋ ๊ฒฉ๋ฆฌ๋ ๊ณต๊ฐ์์ ํ๋ก์ธ์ค๊ฐ ๋์ํ๋ ๊ธฐ์ (๊ฐ์ํ ๊ธฐ์ ์ ํ๋).
์ปจํ ์ด๋๋ ํ๋ก์ธ์ค์ด๊ธฐ ๋๋ฌธ์, ์คํ์ค์ธ ํ๋ก์ธ์ค๊ฐ ์์ผ๋ฉด ์ปจํ ์ด๋๋ ์ข ๋ฃ๋จ.
- ๊ธฐ์กด์ ๊ฐ์ํ ๊ธฐ์ ์ ์ฃผ๋ก OS๋ฅผ ๊ฐ์ํํ๋ค(VirtualBox ๊ฐ์ ๊ฐ์๋จธ์ ).
์ฌ์ฉ๋ฒ์ ๊ฐ๋จํ์ง๋ง ๋ฌด๊ฒ๊ณ ๋๋ ค์ ์ค์ ์๋ฒ ์ด์์๋ ์ฌ์ฉํ ์ ์์์ - ์ดํ ์ ์ฒด OS๋ฅผ ๊ฐ์ํํ๋ ๋์ CPU ๊ฐ์ํ, ๋ฐ๊ฐ์ํ ๊ธฐ์ ์ ํ์ฉํ ๊ธฐ์ ๋ค์ด ๋ฑ์ฅ (KVM, Xen..) - ํด๋ผ์ฐ๋์๋น์ค์ ๊ฐ์์ปดํจํ ๊ธฐ์ ์ ๊ธฐ๋ฐ์ด ๋จ.
- ๊ทธ๋๋ ์ฑ๋ฅ๋ฌธ์ ๊ฐ ์์๊ธฐ ๋๋ฌธ์ OS๋ฅผ ์ถ๊ฐ์ค์นํ๋ ๊ฐ์ํ ๋ฐฉ์์ด ์๋, ํ๋ก์ธ์ค๋ฅผ ๊ฒฉ๋ฆฌํ๋ ๋ฐฉ์์ด ๋ฑ์ฅํจ. ๊ฐ๋ณ๊ณ ๋น ๋ฅด๋ฉฐ, CPU๋ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋ฑ ํ๋ก์ธ์ค๊ฐ ํ์ํ ๋งํผ๋ง ์ถ๊ฐ๋ก ์ฌ์ฉํ๋ ๋ฐฉ์.
ํ๋์ ์๋ฒ์ ์ฌ๋ฌ ์ปจํ ์ด๋๋ฅผ ์คํํด๋, ์๋ก ์ํฅ์ ๋ฏธ์น์ง ์๊ณ ๋ ๋ฆฝ์ ์ผ๋ก ์คํ๋๋ค(๊ฐ๋ฒผ์ด VM์ ์ฌ์ฉํ๋ ๋๋).
์ด๋ฏธ์ง image
๋์ปค์์ ์ปจํ
์ด๋์ ํจ๊ป ์ค์ํ ๊ฐ๋
.
์ด๋ฏธ์ง๋ ์ปจํ
์ด๋ ์คํ์ ํ์ํ ๋ชจ๋ ํ์ผ, ์ค์ ๊ฐ ๋ฑ์ ํฌํจํ๊ณ ์๋ ๋์.
์ด๋ฏธ์ง : ์ํ๊ฐ์ ๊ฐ์ง์ง ์๊ณ , ๋ณํ์ง ์๋๋ค(immutable)
์ปจํ ์ด๋ : ์ด๋ฏธ์ง๋ฅผ ์คํํ ์ํ๋ผ๊ณ ๋ณผ ์ ์์. ์ถ๊ฐ๋๊ฑฐ๋ ๋ณํ๋ ๊ฐ์ด ์ปจํ ์ด๋์ ์ ์ฅ๋จ.
๊ฐ์ ์ด๋ฏธ์ง์์ ์ฌ๋ฌ ์ปจํ
์ด๋๋ฅผ ์์ฑํ ์ ์์.
์ปจํ
์ด๋์ ์ํ๊ฐ ๋ฐ๋๊ฑฐ๋ ์ญ์ ๋์ด๋ ์ด๋ฏธ์ง๋ ๊ทธ๋๋ก ๋จ์ ์์.
์ปจํ ์ด๋๋ฅผ ์คํํ๊ธฐ ์ํด์๋ ์ด๋ฏธ์ง๋ง ์์ผ๋ฉด ๋๋ค.
โ ์๋ก์ด ์๋ฒ ์ถ๊ฐํ๋ ์์
์ด ๊ฐ์ํ๋จ.
(๋ฏธ๋ฆฌ ๋ง๋ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ฐ๊ณ , ์ปจํ
์ด๋๋ฅผ ์์ฑ๋ง ํ๋ฉด ๋)
โ ๋๊ท๋ชจ์ ์๋ฒ ๊ตฌ์ถ๋ ์ฌ์์ง.
(ํ ์๋ฒ์ ์ฌ๋ฌ ์ปจํ
์ด๋๋ฅผ ์ค์น ๊ฐ๋ฅ)
๋์ปค ์ด๋ฏธ์ง๋ Docker hub์ ๋ฑ๋กํ๊ฑฐ๋ Docker Registry ์ ์ฅ์๋ฅผ ์ง์ ๋ง๋ค์ด ๊ด๋ฆฌํ ์ ์๋ค. ๋๊ตฌ๋ ์ด๋ฏธ์ง๋ฅผ ์ฝ๊ฒ ๋ง๋ค๊ณ ๋ฐฐํฌํ ์ ์๋ค.
Docker ์ค์นํ๊ณ ์ปจํ ์ด๋ ์คํํ๊ธฐ
์ค์น
์ ๊ธ์ ๋ณด๋ฉด์ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฐ๋ผํจ.
๋๋ ์๋์ฐ๋ผ์ Docker for windows๋ฅผ ์ค์นํ๋ค.
๋์ปค๋ ์ค์ ๋ก๋ ๊ฐ์๋จธ์ ์ ์ค์น๋๋, ๊ทธ๋ฐ ๋๋์ด ์ ํ ๋ค์ง ์๊ฒ ์ค๊ณ๋์๋ค.
docker version
: ์ค์น๋ ๋์ปค์ ๋ฒ์ ์ ์ถ๋ ฅํจ.
์ปจํ ์ด๋ ์คํ
docker run [์ต์ ๋ค]
๋ผ๋ ๊ธฐ๋ณธ ๋ช ๋ น์ด๋ก ์ปจํ ์ด๋๋ฅผ ์คํํ ์ ์๋ค.
Docker๋ก MySQL ์ค์น, ์คํ
Docker MySQL ์ด๋ฏธ์ง ๋ค์ด๋ก๋
docker pull mysql
: ๋์ปค ์ด๋ฏธ์ง ๋ค์ด๋ก๋.docker pull mysql:8.0.17
์ฒ๋ผ ๋ฒ์ ์ ์ง์ ํด ๋ค์ด๋ก๋ํ ์๋ ์๋ค.docker images
: ๋์ปค ์ด๋ฏธ์ง ํ์ธ.Docker MySQL ์ปจํ ์ด๋ ์์ฑ
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=๋น๋ฐ๋ฒํธ --name ์ด๋ฆ_mysql -v ์ ์ฅ์ ๊ฒฝ๋ก mysql:๋ฒ์ --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
Docker ์ปจํ ์ด๋ ๋ชฉ๋ก ์ถ๋ ฅ
docker ps -a
MySQL ์ปจํ ์ด๋ bash์ ์ ์
docker exec -it ์ด๋ฆ_mysql bash
: docker ์ปจํ ์ด๋์ ์ ๊ทผํ ๋ค์ MySQL์ ๋ก๊ทธ์ธํจ.MySQL ์๋ฒ ์ ์
mysql -u root -p
: root์ฌ์ฉ์๋ก mysql์๋ฒ ์ ์. (์์ฑํ ๋ ์ง์ ํ ํจ์ค์๋ ์ ๋ ฅ)
SQL ๋ฌธ๋ฒ๊ณผ DDL, DML, DCL, DQL, TCL
SQL
Structed Query Language ๊ตฌ์กฐ์ ์ง์์ด
SQL์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ANSI ํ์ค ์ธ์ด์ด๋ค.
- ํน์ง
- ์ฌ๋ฌ ์ค ์คํ, ์ข ๊ฒฐ๋ฌธ์(;) ํ์
- ๋ฒํผ์ ๋ง์ง๋ง ๋ช ๋ น๋ฌธ ์ ์ฅ
- ๋์๋ฌธ์ ๊ตฌ๋ถ ์์. ๋จ, ๋ฐ์ดํฐ๋ฅผ ํ์ํ ๋๋ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ถํจ.
- SQL ๋ช ๋ น์ด๋ DDL, DML, DCL, DQL, TCL๋ก ๋๋ ์ ์๋ค.
DDL
Data Definition Language ๋ฐ์ดํฐ ์ ์์ด
๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ์๋ ํ๋ก๊ทธ๋๋จธ๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๋ฅผ ์ ์ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ธ์ด.
- ๋ช
๋ น์ด :
CREATE
(์ถ๊ฐ),DROP
(์ญ์ ),ALTER
(ํน์ฑ ๋ณ๊ฒฝ),RENAME
(์ด๋ฆ ๋ณ๊ฒฝ),TRUNCATE
(๋ฐ์ดํฐ ์ ๊ฑฐ)
DML
Data Manipulation Language ๋ฐ์ดํฐ ์กฐ์์ด
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ (์ถ๊ฐ/์ญ์ /์์ ) ํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ธ์ด.
- ๋ช
๋ น์ด :
INSERT
(์ถ๊ฐ),DELETE
(์ญ์ ),UPDATE
(์์ )
DCL
Data Control Language ๋ฐ์ดํฐ ์ ์ด์ด
๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์ ๊ทผ๊ถํ ๋ถ์ฌ ๋ฑ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์ ๊ด๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์ธ์ด.
- ๋ช
๋ น์ด :
GRANT
(๊ถํ ๋ถ์ฌ),REVOKE
(๊ถํ ํ์)
DQL
Data Query Language ๋ฐ์ดํฐ ์ง์์ด
๋ฐ์ดํฐ๋ฅผ ๊ฒ์, ์กฐํํ๋ ๋ช ๋ น์ด
- ๋ช
๋ น์ด :
SELECT
TCL
Transaction Control Language ํธ๋์ ์ ์ ์ด์ด
๋ ผ๋ฆฌ์ ์์ ๋จ์(DML)์ ๋ฌถ์ . ์ฌ๋ฌ ๋ช ๋ น์ด๋ก ๋ ์ ์ฒด ์์ ์ ํ ๋ฌถ์์ผ๋ก ๋ฌถ์ ๊ฒ.
- ์๊ธฐ์น ๋ชปํ ์ํฉ์ ๋ํ ์์ธ์ฒ๋ฆฌ๊ฐ ํ์ํ๋ค.
- ๋ช
๋ น์ด :
COMMIT
,ROLLBACK
,SAVEPOINT
SQL ๊ธฐ๋ณธ ๋ฌธ๋ฒ ์ ๋ฆฌ
๋ฐ์ดํฐ๋ฒ ์ด์ค ์์ฑ
CREATE DATABASE ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ช
;
: ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํ๋๊ตฌ๋ฌธ.
๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ํ
USE ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ช
;
: ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํ๋ ๊ตฌ๋ฌธ.
๋ฐ์ดํฐ๋ฒ ์ด์ค์ TABLE ์์ฑ
USE
๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํ ๋ค์, ํด๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค์ TABLE์ ๋ง๋ค ์ ์๋ค.
CREATE TABLE ํ
์ด๋ธ๋ช
(
ํ๋๋ช
1 ํ์
1 ์ ์ฝ์กฐ๊ฑด1,
ํ๋๋ช
2 ํ์
2 ์ ์ฝ์กฐ๊ฑด2,
...
);
CREATE TABLE PLAYER (
ID INT PRIMARY KEY,
NAME VARCHAR(30) NOT NULL,
POSITION VARCHAR(20),
COUNTRY VARCHAR(20) DEFAULT "Korea",
AGE INT,
GOAL INT DEFAULT 0,
ASSIST INT DEFAULT 0,
TEAM INT NOT NULL,
FOREIGN KEY (TEAM)
REFERENCES TEAM (ID)
);
Constraint ์ ์ฝ์กฐ๊ฑด
: ๊ฐ ํ๋์ ์ ์ฝ ์กฐ๊ฑด์ ๊ฑธ ์ ์๋ค.
NOT NULL
: ํ์ ํ๋์ ์ง์ ํจ. ํด๋น ํญ๋ชฉ์ด ๋น์ด์์ผ๋ฉด ๋ฐ์ดํฐ ์ฝ์ ๋ถ๊ฐ๋ฅUNIQUE
: ํ ์ด๋ธ ๋ด ๋ค๋ฅธ ๋ฐ์ดํฐ์ ์ค๋ณต๋์ง ์๋ ์ ์ผํ ํ๋์ ์ง์ ํจ (์ - ID)PRIMARY KEY
:NOT NULL
,UNIQUE
์ ํน์ฑ์ ๋ชจ๋ ๊ฐ์ง๋ ํ๋์ ์ง์ ํจ.FOREIGN KEY
: ๋ค๋ฅธ ํ ์ด๋ธ์ ํน์ ํ๋ ๊ฐ๊ณผ ์ผ์นํด์ผ ํ๋ ํ๋์ ์ง์ ํจ.DEFAULT
: ๊ธฐ๋ณธ๊ฐ์ ๊ฐ์ง๋ ํ๋์ ์ง์ ํจ.
ํ ์ด๋ธ/๋ฐ์ดํฐ๋ฒ ์ด์ค ์์
ALTER
: ํ
์ด๋ธ์ ํ๋๋ฅผ ์์ ํ๊ฑฐ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ CHARACTER SET์ด๋ COLLATE๋ฅผ ์์ ํ ์ ์๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ์์
ALTER DATABASE ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ช
CHARACTER SET=๋ฌธ์์งํฉ์ด๋ฆ;
ALTER DATABASE ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ช
COLLATE=์ฝ๋ ์ด์
์ด๋ฆ;
ํ ์ด๋ธ ์์
ALTER TABLE ํ
์ด๋ธ์ด๋ฆ ADD ํ๋๋ช
ํ๋ํ์
;
: ํ
์ด๋ธ์ ํ๋ ์ถ๊ฐ
ALTER TABLE ํ
์ด๋ธ์ด๋ฆ DROP ํ๋๋ช
;
: ํ
์ด๋ธ์ ํ๋ ์ญ์
ALTER TABLE ํ
์ด๋ธ์ด๋ฆ MODIFY COLUMN ํ๋๋ช
ํ๋ํ์
;
: ํ
์ด๋ธ์ ํ๋ ์์ (์ ์ฝ์กฐ๊ฑด ์ถ๊ฐ ๊ฐ๋ฅ)
ํ ์ด๋ธ/๋ฐ์ดํฐ๋ฒ ์ด์ค ์ญ์
DROP
: ํ
์ด๋ธ์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ญ์ ํ ์ ์๋ค.
DROP DATABASE ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ช
;
DROP TABLE ํ
์ด๋ธ๋ช
;
ํ ์ด๋ธ์ ๋ฐ์ดํฐ๋ง ์ญ์
TRUNCATE TABLE ํ
์ด๋ธ๋ช
;
: ํ
์ด๋ธ ๋ด์ ์คํค๋ง๋ ๋จ๊ธฐ๊ณ , ํ
์ด๋ธ ๋ด ๋ฐ์ดํฐ๋ง ์ญ์ ํ๋ค.
๋ฐ์ดํฐ ์ฝ์
INSERT INTO ํ
์ด๋ธ๋ช
(...) VALUES (...)
: ๋ฐ์ดํฐ ์ฝ์
๊ตฌ๋ฌธ. VALUES
์ ์ฝ์
ํ๋ ค๋ ๋ฐ์ดํฐ๋ฅผ ์
๋ ฅํ๋ค. ๋ณต์์
๋ ฅ ๊ฐ๋ฅ.
INSERT INTO ํ
์ด๋ธ๋ช
(ํ๋๋ช
_1, ํ๋๋ช
_2, ํ๋๋ช
_3, ...)
VALUES (ํ๋๊ฐ_1, ํ๋๊ฐ_2, ํ๋๊ฐ_3, ...), (ํ๋๊ฐ_1, ํ๋๊ฐ_2, ํ๋๊ฐ_3), ...;
๋ฐ์ดํฐ ์์
UPDATE ํ
์ด๋ธ๋ช
SET ๋ฐ๋ ๋ฐ์ดํฐ WHERE ๋ฐ๊ฟ ๋ฐ์ดํฐ
: ๋ฐ์ดํฐ ์์ ๊ตฌ๋ฌธ. ๋ณต์ ์์ ๊ฐ๋ฅ.UPDATE
๋ฌธ์ผ๋ก TABLE
์ ์ ํํ๊ณ ,SET
๋ฌธ์ผ๋ก ์์ ํ ๋ด์ฉ์ ์
๋ ฅํ๊ณ ,WHERE
๋ฌธ์ผ๋ก ์์ ํ ๋์์ ์ ํํจ.
UPDATE ํ
์ด๋ธ๋ช
SET ํ๋๋ช
_1=ํ๋๊ฐ_1, ํ๋๋ช
_2=ํ๋๊ฐ_2, ...
WHERE ํ๋๋ช
_1=ํ๋๊ฐ_1, ํ๋๋ช
_2=ํ๋๊ฐ_2, ...;
๋ฐ์ดํฐ ์ญ์
DELETE FROM ํ
์ด๋ธ๋ช
WHERE ์ญ์ ํ ๋ฐ์ดํฐ
: ๋ฐ์ดํฐ ์ญ์ ๊ตฌ๋ฌธ.DELETE FROM
๋ฌธ์ผ๋ก TABLE
์ ์ ํํ๊ณ ,WHERE
๋ฌธ์ผ๋ก ์ญ์ ํ ๋ฐ์ดํฐ๋ฅผ ์ ํํจ.
DELETE FROM ํ
์ด๋ธ๋ช
WHERE ํ๋๋ช
_1=ํ๋๊ฐ_1, ํ๋๋ช
_2=ํ๋๊ฐ_2, ...;
๋ฐ์ดํฐ ์กฐํ
SELECT ํ๋๋ช
FROM ํ
์ด๋ธ๋ช
WHERE ์กฐํํ ๋ฐ์ดํฐ
: ๋ฐ์ดํฐ ์กฐํ ๊ตฌ๋ฌธ.
SELECT
๋ฌธ์ผ๋ก ์กฐํํ ํ๋๋ฅผ ์ ํํ๊ณ ,FROM
๋ฌธ์ผ๋ก TABLE
์ ์ ํํ ํ,WHERE
๋ฌธ์ผ๋ก ์กฐํํ ๋ฐ์ดํฐ๋ฅผ ์ง์ ํจ.
SELECT ํ๋๋ช
_1, ํ๋๋ช
_2, ...
FROM ํ
์ด๋ธ๋ช
WHERE ํ๋๋ช
_1=ํ๋๊ฐ_1, ํ๋๋ช
_2=ํ๋๊ฐ_2;
1/28 ์ค๋์ ์๋จ์ด
truncate (v) (๊ธธ์ด๋ฅผ) ์ค์ด๋ค.
grant (v) ์น์ธํ๋ค, ์ธ์ ํ๋ค
revoke (v) (๊ฒฉ์) ์ทจ์ํ๋ค, ํ์งํ๋ค
'TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[TIL] JDBC์ DB ์ฐ๊ฒฐ - JDBC๋ก Docker์ MySQL ์ฐ๊ฒฐ (์ฝ์ง ๋ง์) (0) | 2021.01.30 |
---|---|
[TIL - Codesquad] MySQL Connector, JDBC ๊ณต๋ถ์์ (0) | 2021.01.29 |
[TIL - Codesquad] ์๊ณ ๋ฆฌ์ฆ ๋ฐ์ด (0) | 2021.01.27 |
[TIL - Codesquad] ๋๊ธฐ&๋น๋๊ธฐ, ๋ธ๋ก&๋ ผ๋ธ๋ก, ์ฝ๋ฐฑํจ์, ๋์์ฑ/๋ณ๋ ฌ์ฑ, ํ๋ก์ธ์ค์ ์ค๋ ๋ (0) | 2021.01.25 |
[TIL] ์๋ฐ Random.nextInt() , Date() (0) | 2021.01.24 |