๐ ์ค๋ ๋ฐฐ์ด ๋ด์ฉ!
- SQL ์ค์ต
๐ SQL ์ค์ต
SQL ํด์ฆ๋ ํ๊ณ โฌ๏ธ
SQL ์ฟผ๋ฆฌ๋ฌธ์ ๋น์นธ์ ์ฑ์๋ฃ๋ ์ฐ์ต๋ ํด๋ณด๊ณ โฌ๏ธ
MY SQL์ ์ค์นํ์ฌ ๊ทธ ์์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค, ํ
์ด๋ธ ๋ฑ์ ๋ง๋ค์ด ์ง์ ๋์ผ๋ก ํ์ธ๋ ํด๋ณด์๋ค! โฌ๏ธ
CREATE DATABASE Practice CHARACTER SET UTF8;
๋กPractice
๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์์ฑํ๊ณSHOW DATABASE;
๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ฑ์ด ๋์๋์ง ํ์ธํ์๋ค.
ํ์ธ ํ, ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ฌ๋ฌ๊ฐ ์์ด์ ๋ด๊ฐ ์์ฑํ Practice
๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฌ๋ฌ ์ฟผ๋ฆฌ๋ฌธ์ ์คํํ๋ ค๋ฉด ๊ทธ๊ฒ์ ์ฌ์ฉํด์ผํ๊ธฐ ๋๋ฌธ์
use Practice;
๋ก ๊ทธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ์ ๊ทผํ์๋ค.- ๊ทธ๋ฆฌ๊ณ
SHOW TABLES;
์ ํ๋ฉด ์์ง ํ ์ด๋ธ์ ์์ฑํ์ง ์์๊ธฐ ๋๋ฌธ์ Empty set์ด๋ผ๋ ๋ง์ด ๋์จ๋ค.
6.
CREATE TABLE user (
-> id int PRIMARY KEY AUTO_INCREMENT,
-> name varchar(255),
-> email varchar(255)
-> );`
๋ก user
๋ผ๋ ํ
์ด๋ธ์ ์์ฑํ์ฌ ๊ทธ ์์ ๊ฐ ํ์
๋ค์ ์ด์ ์์ฑํ์๋ค.
( ์ฌ๊ธฐ์ AUTO_INCREMENT โ ๋ฐ์ดํฐ๊ฐ ์ฝ์
๋ ๋๋ง๋ค PK๋ฅผ 1์ฉ ์ฆ๊ฐํด์ฃผ๋ ์ญํ )
SHOW TABLES;
ํ๋ฉด ์ด๋ค ์ด๋ฆ์ ํ ์ด๋ธ์ด ์์ฑ๋์๋์ง ๋ณผ ์ ์๊ณdesc user;
ํ๋ฉด ํด๋นuser
ํ ์ด๋ธ ์ ์ฒด๋ฅผ ๋ณผ ์ ์๋ค.
( ์ฌ๊ธฐ์ desc โ describe )
ํ
์ด๋ธ์ ์ด์ ์์ฑํ์ผ๋,
INSERT INTO user(name, email) values ("hyunju", "wnguswn7/naver.com");
๋ก ๊ฐ ์ด์ ๊ฐ์ ๋ฃ์ด ๋ณด์๋ค.
( ์ด๋ฉ์ผ์ @๊ฐ ๋์ง ์์ /๋ก ๋์ฒด ํ๋ค! )- ์ดํ,
DESC user;
๋กuser
ํ ์ด๋ธ ์ ์ฒด๋ฅผ ์ดํด๋ณด๋ฉด ๊ฐ ๊ฐ์ด ์ ๋ค์ด๊ฐ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ด์ ํ
์ด๋ธ์ ์์ฑํ์ผ๋, ๋ฐฐ์ด ์ฟผ๋ฆฌ๋ฌธ์ ์ฌ์ฉํ์ฌ ๊ฐ์ ์กฐํํ ์ ์๋ค!! ๐
- ์ผ๋จ
SELECT * FROM user;
๋กuser
ํ ์ด๋ธ์ ์ ์ฒด๋ฅผ ์กฐํํด ๋ณด์๊ณ , SELECT email FROM user;
๋กuser
ํ ์ด๋ธ์ email ํ๋๋ง ์ ํํ์ฌ ์กฐํํด ๋ณด์๋ค!
- ๊ทธ๋ฆฌ๊ณ ์ด ํ ์ด๋ธ์์ gender์ Null ๊ฐ์ Not Null๋ก ๋ฐ๊พธ๊ณ ์ถ์ด์
ALTER TABLE user MODIFY COLUMN gender varchar(255) NOT NULL;
์ด๋ ๊ฒ ์์ ํ๋ ค๊ณ ํ๋๋ฐ
์๊พธ Invalid use of NULL value
๋ผ๋ ์๋ฌ๊ฐ ๋ด๋ค.
์ด ๋ฌธ์ ์ ์์ธ์ gender column์ด ํ์ฌ null ๊ฐ์ ๊ฐ์ง๊ณ ์์ด ๋ฐ๋ก not null๋ก ๋ณ๊ฒฝํ ์ ์๋ ๊ฒ !
13-1. ๊ทธ๋์ update user set gender='male' where gender is null;
๋ก ์ null์ ์์์ ๊ฐ male
๋ก ๋ณ๊ฒฝํด์ฃผ๊ณ
13-2. ๋ค์ ALTER TABLE user MODIFY COLUMN gender varchar(255) NOT NULL;
๋ก ๊ฐ์ ๋ณ๊ฒฝํด์ฃผ์๋ค.
- ๊ทธ๋ฆฌ๊ณ
desc user;
๋กuser
ํ ์ด๋ธ์ ๋ณด๋ ๋ณ๊ฒฝ๋ ๊ฒ์ ์ ์ ์๋ค!
๐ ๋๋์
ํ์คํ ์ง์ ๋ฌธ์ ๋ ํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ค์ด๋ณด๋ ๊ทธ๋ฅ ๊ฐ๋
๋ง ์ธ์ธ ๋๋ณด๋ค ๋ ์ดํด๊ฐ ์ ๋๋ ๊ฒ ๊ฐ๋ค!
ํด์ฆ๋ ์ฐ์ต๋ ์๋ฒฝํ ์ ํด๋ด์ ๊ธฐ๋ถ์ด ์กฐํ ๐ป
( ๋ณธ ๊ฒ์๋ฌผ์ 2022/10/07์ ์์ฑํ ๊ธ์ ์ฎ๊ธด ๊ธ์ ๋๋ค. ์๋ฌธ์ ์๊ธฐ์ ์์! )
'โข CodeStates BootCamp > Section 2' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ [Section2] 14. ERD ์ค๊ณ (0) | 2023.04.07 |
---|---|
๐ [Section2] 13. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ (1) | 2023.04.07 |
๐ [Section2] 11. SQL (0) | 2023.04.07 |
๐ [Section2] 10. HTTP / REST API (1) | 2023.04.07 |
๐ [Section2] 9. ๋คํธ์ํฌ2 (0) | 2023.04.07 |