[MySQL] ํ ์ด๋ธ ์์ฑํ๊ธฐ
ํ ์ด๋ธ ๋ง๋ค๊ธฐ
CREATE TABLE
CREATE TABLE people (
person_id INT,
person_name VARCHAR(10),
age TINYINT,
birthday DATE
);
VARCHAR๋ 10๋ฐ์ดํธ๊น์ง ๋ฃ์ ์ ์๋ ๊ฐ๋ณ ๋ฌธ์์ด ๊ธธ์ด๋ฅผ ์๋ฏธ
ํ ์ด๋ธ ์์ ํ ๋ ALTER TABLE
ํ ์ด๋ธ ์ญ์ ํ ๋๋ DROP TABLE
์ฟผ๋ฆฌ๋ฌธ ์ฐ๊ณ ๋์ ๋ฒ๊ฐ๊ฐ์ด ์๊ธด ๋ฒํผ ๋๋ฅด๊ณ -> ์๋ก๊ณ ์นจ ํด์ค ๊ฒ!
๋ฐ์ดํฐ ๋ฃ์ ๋
INSERT INTO ์ฌ์ฉ
INSERT INTO people
(person_id, person_name, age, birthday)
VALUES (1, 'ํ๊ธธ๋', 21, '2000-01-31');
๊ฐ ์ด์ ๋ณ์๋ก 1,ํ๊ธธ๋,21 2000-01-31์ ๋ฃ๊ฒ ๋ค๋ ๋ป
people ํ ์ด๋ธ์์ -> select row๋ฅผ ํด๋ณด๋ฉด
๊ฐ์ด ์ ๋ด๊ธด๊ฒ์ ํ์ธ ํ ์ ์๋ค.
์ด ๊ฒฝ์ฐ์๋ ๋ชจ๋ ์ปฌ๋ผ์ ๊ฐ์ด ๋ค์ด๊ฐ๊ธฐ์ ์ปฌ๋ผ๋ช ์ ์๋ตํ ์๋ ์๋ค.
์ผ๋ถ ์ปฌ๋ผ์๋ง ๊ฐ์ ๋ฃ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค. ์ด ๊ฒฝ์ฐ๋ age ์ปฌ๋ผ์ ๊ฐ์ ๋ฃ์ง ์์๋ค.
-- ์ผ๋ถ ์ปฌ๋ผ์๋ง ๊ฐ ๋ฃ๊ธฐ ๊ฐ๋ฅ (NOT NULL์ ์๋ต ๋ถ๊ฐ)
INSERT INTO people
(person_id, person_name, birthday)
VALUES (3, '์๊บฝ์ ', '1995-11-04');
ํ ์ด๋ธ ์์ฑ์ ์ ์ฝ ๋ฃ๊ธฐ
CREATE TABLE people (
person_id INT AUTO_INCREMENT PRIMARY KEY,
person_name VARCHAR(10) NOT NULL,
nickname VARCHAR(10) UNIQUE NOT NULL,
age TINYINT UNSIGNED,
is_married TINYINT DEFAULT 0
);
AUTO_INCREMENT์ PRIMARY KEY๋ ๊ฐ์ด ๊ฐ๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
AUTO_INCREMENT๋ ์ ํ ์์ฑ์ ๋ง๋ค ์๋์ผ๋ก 1์ฉ ์ฆ๊ฐ
โจPRIMARYKEY๋ ์ค๋ณต์ ๋ ฅ ๋ถ๊ฐ, null๊ฐ ๋ถ๊ฐ / ํ ์ด๋ธ ํ๋๋ง ๊ฐ๋ฅ/ ๊ธฐ๋ณธ์ ์ผ๋ก ์ธ๋ฑ์ค ์์ฑ/ ๊ฐ ํ์ ๊ณ ์ ํ๊ฒ ์๋ณ, ํ ์ด๋ธ ๋ง๋ค ํ๋์ฉ!
UNIQUE๋ ์ค๋ณต ์ ๋ ฅ ๋ถ๊ฐ
NOT NULL์ NULL์ ๋ ฅ ๋ถ๊ฐ
UNSIGNED๋ ์์๋ง ๊ฐ๋ฅ
DEFAULT๋ ๊ฐ ์ ๋ ฅ ์์์ ๊ธฐ๋ณธ๊ฐ์ ์๋ฏธํ๋ค.
์ ์ฝ์ ์์ ํ๊ณ ์ถ์ผ๋ฉด
ํ ์ด๋ธ ์ค๋ฅธ์ชฝํด๋ฆญ -> Alter table๋ก ๊ฐ๋ฉด
์ฌ๊ธฐ์ ์์ ํด์ค ์ ์๋ค!