[MySQL] ์ ์ฝ์กฐ๊ฑด (Constraint) - NOT NULL, DEFAULT, PRIMARY KEY, AUTO_INCREMENT / CRUD
Constraint (์ ์ฝ์กฐ๊ฑด)
-
NOT NULL
-
UNIQUE
-
PRIMARY KEY
-
FOREIGN KEY
-
DEFAULT
Null / Not Null
-
Null = N / Not Null = NN
-
Null์ ๊ณต๋ฐฑ์ด ์๋ โ๋ฏธ์ ๋ ฅ ์ํโ๋ฅผ ์๋ฏธ
-
Not Null ์ค์
-
CREATE TABLE table_name ( column_name data_type NOT NULL );
-
-
null๊ฐ ์ ๋ ฅ ๋ฐฉ๋ฒ
-
ex)
CREATE TABLE people( num int, name char(10) ); INSERT INTO people (num) VALUES (1); # or INSERT INTO people (num, name) VALUES (2, null);
-
Default
-
๋ฏธ์ ๋ ฅ ์ํ์ผ ๊ฒฝ์ฐ ๋ฏธ๋ฆฌ ์ง์ ํ ๊ธฐ๋ณธ๊ฐ์ด ์ ๋ ฅ๋จ
-
๊ธฐ๋ณธ๊ฐ ์ค์
-
CREATE TABLE table_name ( column_name data_type DEFAULT 'default_value' );
-
Primary Key
-
ํ๋ผ์ด๋จธ๋ฆฌํค(=๊ธฐ๋ณธํค) ์ค์
-
CREATE TABLE table_name ( column_name data_type PRIMARY KEY ); OR CREATE TABLE table_name ( column_name data_type, PRIMARY KEY(column_name) );
-
-
-
Not Null : ๋ฏธ์ ๋ ฅ ์ํ์ ๊ฐ ํ์ฉํ์ง ์์
-
์ ์ผ์ฑ : ์ค๋ณต๊ฐ ๋ถ๊ฐ๋ฅ, ์ค๋ณต๋๋ ๋ฐ์ดํฐ๊ฐ ์กด์ฌํ์ง ์๋ ์ปฌ๋ผ์ ์ฌ์ฉ
-
์์์ฑ : ๋ฐ์ดํฐ๊ฐ ์์์ฑ์ ๊ฐ์ ธ์ผ ํจ
-
-
-
PK๋ ํ๋์ ํ ์ด๋ธ ๋น ํ ๊ฐ๋ง ์ฌ์ฉ ๊ฐ๋ฅ
-
PK ๋์ ์ปฌ๋ผ ์ค PK๋ก ์ง์ ๋์ง ์์ ์ปฌ๋ผ : Unique Key (ํ๋ณดํค / ๋์ฒดํค / ์ ์ผํค)๋ก ์ง์
-
MySQL์์์ Unique๋ ๋ฏธ์ ๋ ฅ ํ์ฉ
-
AUTO_INCREMENT
-
์๋ ์ฆ๊ฐ ์์ฑ
-
PK, UNIQUE๊ฐ ์ง์ ๋ ์ปฌ๋ผ์์๋ง ์ฌ์ฉ ๊ฐ๋ฅ
-
์ ๋ ฅ๋๊ฒ ์ค ๊ฐ์ฅ ํฐ ๊ฐ์ ๋ฝ์์์ +1
-
AUTO_INCREMENT ๊ฐ ์ด๊ธฐํํ๊ธฐ
- ALTER TABLE table_name AUTO_INCREMENT=์์ํ ์ซ์;
CRUD
-
CREATE - INSERT
-
READ - SELECT
-
UPDATE - UPDATE
-
DELETE - DELETE
CREATE / DELETE
-
๋ฐ์ดํฐ ์ญ์
- DELETE FROM table_name WHERE ์กฐ๊ฑด์ ;
UPDATE
-
๋ฐ์ดํฐ ์์
- UPDATE table_name SET ์์ ํ column_name = ์์ ๊ฐ WHERE ์กฐ๊ฑด์ ;
SELECT
-
๋ฐ์ดํฐ ์กฐํ
-
SELECT * FROM table_name WHERE ์กฐ๊ฑด์ ;
-
SELECT * FROM table_name WHERE column_name = ์ซ์/โ๋ฌธ์์ดโ;
-
NOT EQUAL ( != ) : SELECT * FROM table_name WHERE column_name != ์ซ์/โ๋ฌธ์์ดโ;
-
-
SELECT column_name1, column_name2 FROM table_name;
-
SELECT column_name AS alias FROM table_name;
-