๊ฐ์ฒด ๋ฌด๊ฒฐ์ฑ(Entity Integrity)
- ํ ์ด๋ธ์ ์ ์ฅ๋๋ ๊ฐ๊ฐ์ ๋ก์ฐ์ ๋ํด์ ์ ์ผ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํ ๋ฌด๊ฒฐ์ฑ
- ๋ฐ๋์ ๋ณด์ฅ๋์ด์ผ ํ๋ฏ๋ก, ํ๋ก๊ทธ๋จ์ด๋ ํธ๋ฆฌ๊ฑฐ๋ณด๋ค DBMS๊ฐ ์ ๊ณตํ๋ ๊ธฐ๋ณธํค(Primary Key) ์ ์ฝ์กฐ๊ฑด์ด๋ ์ ์ผ์ฑ(Unique) ์ ์ฝ์กฐ๊ฑด ๋ฑ์ ์ด์ฉํ์ฌ ๊ตฌํํจ
* ์ ์ผํค(Unique Key) ์ ์ฝ์กฐ๊ฑด
- ์ง์ ๋ ์ปฌ๋ผ์ ๊ฐ์ด ์ค๋ณต๋๋ ๊ฒ์ ํ์ฉํ์ง ์์
- ํ ์ด๋ธ์ ์ฌ๋ฌ ๊ฐ๊ฐ ์กด์ฌํ ์ ์์
- NULL ๊ฐ์ ํ์ฉ
- ๋ณตํฉ ์ ์ผํค(Composite Unique Key) : ํ ๊ฐ ์ด์์ ์ปฌ๋ผ์ ์กฐํฉํ์ฌ ์ ์ผํค๋ก ๋ง๋ค ์ ์์
* ๊ธฐ๋ณธํค(Primary Key) ์ ์ฝ์กฐ๊ฑด
- ํ ์ด๋ธ์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ผํ๊ฒ ์๋ณํ๊ธฐ ์ํ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด
- ํ ์ด๋ธ ๋น ํ๋๋ง ์ง์ ๊ฐ๋ฅํจ
- ์ ์ผ(Unique)ํด์ผํ๊ณ , NULL๊ฐ์ ๊ฐ์ง๋ฉด ์๋จ
- ํน์ ์ปฌ๋ผ(๋ค)์ ๊ธฐ๋ณธํค๋ก ์ง์ ํ๋ฉด, ์๋์ผ๋ก Unique์ธ๋ฑ์ค์ NOT NULL ์์ฑ์ ๊ฐ์ง๊ฒ ๋จ
- ํ๋ ๋๋ ์ฌ๋ฌ ๊ฐ์ ์ปฌ๋ผ์ ํ๋์ ๊ธฐ๋ณธํค๋ก ๋ง๋ค ์ ์์
- ๊ธฐ๋ณธํค๋ฅผ ๋ง๋ค๋ฉด Primary Key ์ ์ฝ์กฐ๊ฑด์ด, ์ ์ผํค๋ฅผ ๋ง๋ค๋ฉด Unique ์ ์ฝ์กฐ๊ฑด์ด ์์ฑ๋๋ฉฐ, ๋ ๋ชจ๋ Unique ์ธ๋ฑ์ค ์์ฑ
* ํ ์ด๋ธ ์์ฑ ํ ์ง์ ๋ฐฉ๋ฒ
alter table pk_test add constraint pl_col1 primary key(col1);
alter table pk_test add constraint uk_col2 unique key(col2);
* ๊ธฐ๋ณธํค์ ์ ์ผํค ๋น๊ต (์ค๋ผํด)
ํญ๋ชฉ | ๊ธฐ๋ณธํค ์ ์ฝ | Unique ์ ์ฝ |
NULL ํ์ฉ | X | O |
์ปฌ๋ผ ์ | 1๊ฐ ์ด์ | 1๊ฐ ์ด์ |
ํ ์ด๋ธ๋น ๊ฐ์ | ํ ์ด๋ธ ๋น 1๊ฐ | ํ ์ด๋ธ์ ์ฌ๋ฌ ๊ฐ ์์ฑ ๊ฐ๋ฅ |
์ ์ผํ ๊ฐ ์๋ณ | O | O |
๊ถ๊ณ | ํ์๋ ์๋์ง๋ง ๊ฐ์ฒด ๋ฌด๊ฒฐ์ฑ์ ์ํด ๋ฐ๋์ ์์ฑํ๋ ๊ฒ์ด ์์น | ์ปฌ๋ผ์ ์ฑ๊ฒฉ์ ๋ฐ๋ผ ์ง์ |
์ปฌ๋ผ๋ฐ์ดํฐ ํ์ | LOB, RAW, BFILE ๋ฑ์ ํน์ ํ์ ์ ์์ฑ ๋ถ๊ฐ | LOB, RAW, BFILE ๋ฑ์ ํน์ ํ์ ์ ์์ฑ ๋ถ๊ฐ |
'software engineering > ๋ฐ์ดํฐ๋ฒ ์ด์ค์ค๊ณ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[DB] ์ธ๋ฑ์ค ์ ์ (0) | 2023.10.12 |
---|---|
[DB] ์ธ๋ฑ์ค (Index) (1) | 2023.10.11 |
[DB] ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ (0) | 2023.10.07 |
[DB] ์์ญ ๋ฌด๊ฒฐ์ฑ (0) | 2023.10.07 |
[DB] ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ (0) | 2023.10.07 |