์ ๊ทํ๋ฅผ ํด์ผํ๋ ์ด์ ๋ ์๋ชป๋ ํ ์ด๋ธ ์ค๊ณ๋ก ์ธํด Anomaly (์ด์ ํ์)๊ฐ ๋ํ๋๊ธฐ ๋๋ฌธ์ด๋ค.
์ด ํ์ด์ง์์๋ Anomaly๊ฐ ๋ฌด์์ธ์ง ์ดํด๋ณธ๋ค.
์) {Student ID, Course ID, Department, Course ID, Grade}
-
์ฝ์ ์ด์ (Insertion Anomaly)
๊ธฐ๋ณธํค๊ฐ {Student ID, Course ID} ์ธ ๊ฒฝ์ฐ -> Course๋ฅผ ์๊ฐํ์ง ์์ ํ์์ Course ID๊ฐ ์๋ ํ์์ด ๋ฐ์ํจ. ๊ฒฐ๊ตญ Course ID๋ฅผ Null๋ก ํ ์๋ฐ์ ์๋๋ฐ, ๊ธฐ๋ณธํค๋ Null์ด ๋ ์ ์์ผ๋ฏ๋ก, Table์ ์ถ๊ฐ๋ ์ ์์.
๊ตณ์ด ์ฝ์ ํ๊ธฐ ์ํด์๋ '๋ฏธ์๊ฐ'๊ณผ ๊ฐ์ Course ID๋ฅผ ๋ง๋ค์ด์ผ ํจ.
๋ถํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ถ๊ฐํด์ผ์ง, ์ฝ์ ํ ์ ์๋ ์ํฉ = Insertion Anomaly
-
๊ฐฑ์ ์ด์ (Update Anomaly)
๋ง์ฝ ์ด๋ค ํ์์ ์ ๊ณต (Department) ์ด "์ปดํจํฐ์์ ์์ "์ผ๋ก ๋ฐ๋๋ ๊ฒฝ์ฐ.
๋ชจ๋ Department๋ฅผ "์์ "์ผ๋ก ๋ฐ๊พธ์ด์ผ ํจ. ๊ทธ๋ฌ๋ ์ผ๋ถ๋ฅผ ๊น๋นกํ๊ณ ๋ฐ๊พธ์ง ๋ชปํ๋ ๊ฒฝ์ฐ, ์ ๋๋ก ํ์ ๋ชปํจ.
์ผ๋ถ๋ง ๋ณ๊ฒฝํ์ฌ, ๋ฐ์ดํฐ๊ฐ ๋ถ์ผ์น ํ๋ ๋ชจ์์ ๋ฌธ์ = Update Anomaly
-
์ญ์ ์ด์ (Deletion Anomaly)
๋ง์ฝ ์ด๋ค ํ์์ด ์๊ฐ์ ์ฒ ํํ๋ ๊ฒฝ์ฐ, {Student ID, Department, Course ID, Grade}์ ์ ๋ณด ์ค
Student ID, Department ์ ๊ฐ์ ํ์์ ๋ํ ์ ๋ณด๋ ํจ๊ป ์ญ์ ๋จ.
ํํ ์ญ์ ๋ก ์ธํด ๊ผญ ํ์ํ ๋ฐ์ดํฐ๊น์ง ํจ๊ป ์ญ์ ๋๋ ๋ฌธ์ = Deletion Anomaly