Search

CHECK

CHECK

์ •์˜

CHECK๋Š” ์ปฌ๋Ÿผ์— ์ž…๋ ฅ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฒดํฌํ•˜์—ฌ ํŠน์ • ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋งŒ ์ž…๋ ฅ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ์ œ์•ฝ์กฐ๊ฑด์ž…๋‹ˆ๋‹ค.

ํŠน์ง•

โ€ข
์ปฌ๋Ÿผ์˜ ๊ฐ’์ด TRUE ๋˜๋Š” 1์ด์–ด์•ผ๋งŒ ๋ฐ์ดํ„ฐ๊ฐ€ ์ž…๋ ฅ๋ฉ๋‹ˆ๋‹ค.
โ€ข
์ปฌ๋Ÿผ ๋ ˆ๋ฒจ๊ณผ ํ…Œ์ด๋ธ” ๋ ˆ๋ฒจ์—์„œ ๋ชจ๋‘ ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
WHERE ์ ˆ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์กฐ๊ฑด์‹์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ข
ํ•˜๋‚˜์˜ ์ปฌ๋Ÿผ์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ CHECK ์ œ์•ฝ์กฐ๊ฑด์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฝ”๋“œ

์ƒ์„ฑ

-- ์ปฌ๋Ÿผ ๋ ˆ๋ฒจ CHECK ์ œ์•ฝ์กฐ๊ฑด CREATE TABLE employees ( id INT, age INT CHECK (age >= 20), salary DECIMAL(10,2) CHECK (salary > 0) ); -- ํ…Œ์ด๋ธ” ๋ ˆ๋ฒจ CHECK ์ œ์•ฝ์กฐ๊ฑด CREATE TABLE products ( id INT, price DECIMAL(10,2), discount DECIMAL(10,2), CONSTRAINT check_price CHECK (price > discount) );
SQL
๋ณต์‚ฌ

์ˆ˜์ •

-- CHECK ์ œ์•ฝ์กฐ๊ฑด ์ถ”๊ฐ€ ALTER TABLE employees ADD CONSTRAINT check_age CHECK (age >= 20); -- CHECK ์ œ์•ฝ์กฐ๊ฑด ๋น„ํ™œ์„ฑํ™” ALTER TABLE employees NOCHECK CONSTRAINT check_age;
SQL
๋ณต์‚ฌ

์‚ญ์ œ

-- CHECK ์ œ์•ฝ์กฐ๊ฑด ์‚ญ์ œ ALTER TABLE employees DROP CONSTRAINT check_age;
SQL
๋ณต์‚ฌ
์ฃผ์˜: MySQL 8.0.16 ์ด์ „ ๋ฒ„์ „์—์„œ๋Š” CHECK ์ œ์•ฝ์กฐ๊ฑด์ด ๊ตฌ๋ฌธ์ ์œผ๋กœ๋Š” ํ—ˆ์šฉ๋˜์ง€๋งŒ ์‹ค์ œ๋กœ๋Š” ๋ฌด์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 8.0.16 ์ดํ›„ ๋ฒ„์ „๋ถ€ํ„ฐ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.