๋ชฉ์ฐจ
- ๊ธฐ๋ณธ์ ์ธ schema, table, ๋ฐ์ดํฐ ํ์ ์ง์ ํ๊ธฐ
- ํ ์ด๋ธ์ ๋ฐ์ดํฐ ๋ฃ๊ธฐ
- ์์ ์ค์
- Trigger
๊ธฐ๋ณธ์ ์ธ Schema, table, ๋ฐ์ดํฐ ํ์ ์ง์ ํ๊ธฐ
์ธ์์ด ์ ๋ง ์ข์์ง๊ฒ, ์ด๋ ๊ฒ GUI ๋ฅผ ํตํด์ ๋ง๋ค ์๋ ์๊ณ , ๋ค์๊ณผ ๊ฐ์ด SQL๋ฌธ์ ์ ๋ ฅํ๋ ๋ฐฉ์์ผ๋ก๋ ๋๊ฐ์ด schema ๋ฐ table ๋ฑ์ ๋ง๋ค ์ ์๋ค.
์ฌ๊ธฐ์ pk๋ฅผ ์ง์ ํด์ฃผ์ง ์์ ์์ ํ๋ฉด ๋ค์๊ณผ ๊ฐ๋ค
shopdb ์คํค๋ง์ membertbl ํ ์ด๋ธ์์ memberID ์ด์ PK๋ก ์ง์ ํ๊ฒ ๋ค๋ ์๋ฏธ์ด๋ค
ํ ์ด๋ธ์ ๋ฐ์ดํฐ ๋ฃ๊ธฐ
์๊ฐ๋ณด๋ค sql ์ฟผ๋ฆฌ๋ฅผ ์ง ๋ค๊ณ ํ๋ฉด ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆด ๊ฒ์ด๋ค.
ํ์ง๋ง workbench gui๋ฅผ ์ด์ฉํ๋ฉด, ๋ค์๊ณผ ๊ฐ์ด result grid์์ ํ๋์ฉ ์์ ์ ํด์ฃผ๊ณ , ๋ง์ง๋ง์ apply๋ฅผ ํด๋ฆญํ๋ฉด ๋๋ค.
์ฒ์์
์ถ๊ฐํ ํ ์ด๋ธ์์ ๋ค์๊ณผ ๊ฐ์ด ๊ฒ์์ ํด์ฃผ๊ณ ํ๋์ฉ ์ถ๊ฐํ๋ฉด ๋๋ค
์์ ์ค์
๋๋ธํด๋ฆญํด์ ์์ ํ ๊ณต๊ฐ์ schema๋ฅผ ์ฐพ์์ค๋ค. ์ด์ ๋ถํฐ SQL ๋ฌธ์ ์ ํ๋ ShopDB์ ์ ์ฉ๋๋ค
Trigger
ํ ์ด๋ธ์ ๋ถ์ฐฉ๋์ด์ ํ ์ด๋ธ์ INSERT๋ UPDATE ๋๋ DELETE ์์ ์ด ๋ฐ์๋๋ฉด ์คํ๋๋ ์ฝ๋๋ฅผ ๋งํ๋ค.
๋ณดํต ํน์ ํ์์ ์ญ์ ํ๋ ๊ฒฝ์ฐ, ๊ฐ๋จํ ํ์ ํ ์ด๋ธ์์ ํน์ ํ์์ ๋ํ ์ ๋ณด๋ฅผ ์ญ์ ํ๊ฒ ๋๋๋ฐ, ํ ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋๋ฉด, ๋์ค์ ํ์์์ ํํดํ ์ฌ๋์ด ๋๊ตฌ ๋๊ตฌ์ธ์ง ์ ๋ณด๋ฅผ ์ด๋ป๊ฒ ์ ์ ์์๊น? ์์น์ ์ผ๋ก๋ ์์ ์๋๋ฐ, ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
์ญ์ ํ๊ธฐ ์ ์ ๊ทธ ๋ด์ฉ์ ๋ค๋ฅธ ๊ณณ์ ๋จผ์ ๋ณต์ฌํด ๋๊ณ ๋งค๋ฒ ์์์ ์ผ๋ก ์ง์ฐ๊ธฐ ์ ์ ๋ค๋ฅธ ๊ณณ์ ๋ณต์ฌํด ๋์์ผ ํ๋ค๋ ๊ฒ์ ๊น๋จน๊ธฐ๋ผ๋ ํ๋ฉด ์ด๊ฑด ์ ๋ขฐ์ ์ธ ๋ฐฉ๋ฒ์ด ์๋๊ฒ์ด๋ค.
๊ทธ๋์ ํ์ ํ ์ด๋ธ์ ์ญ์ ์์ ์ด ์ผ์ด๋ ๊ฒฝ์ฐ์ ์ญ์ ๋๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ๋ค๋ฅธ ๊ณณ์ ์ญ์ ๋ ๋ฐ์ดํฐ๋ฅผ ์๋์ผ๋ก ์ ์ฅํด์ฃผ๋ ๊ธฐ๋ฅ์ด ์๋ค๋ฉด ์ ๋ขฐ์ฑ์ด ํฅ์ ๋ ๊ฒ์ด๋ค. ์ฆ, ๋งค๋ฒ ํ ๋ฐ์ดํฐ๋ฅผ ์ญ์ ํ๊ธฐ ์ ์ ๋ค๋ฅธ ๊ณณ์ ์ ์ฅ์ ํด์ผ ํ ํ์์ฑ์ด ์๊ธฐ ๋๋ฌธ์ ์๊ฐ์ ์ ์ฝํ ์ ์๊ณ ์ญ์ ๋ ๋ชจ๋ ๋ฐ์ดํฐ๋ ์๋ฒฝํ๊ฒ ๋ณ๋์ ๊ณต๊ฐ์ ์ ์ฅ์ด ๋์ด ์์ ๊ฒ์ด๋ค.
'๐๏ธ์ํํธ์จ์ด > ๐SQL & MySQL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[MySQL] ์์ฝ์ด ์๋ ๋๋ฌธ์ (0) | 2021.10.29 |
---|---|
[MySQL] index ์ฌ์ฉ๋ฒ (0) | 2021.10.28 |
[MySQL] ์ก๋คํ๊ฒ๋ค (0) | 2021.10.27 |
[MySQL] ์ค์น ๋ฐ ๊ธฐ๋ณธ ์ธํ (0) | 2021.10.27 |
[Oracle SQL]sql developer ๋ฐ sql DB eclipse jsp์์ ์ฐ๋ํ๊ธฐ (0) | 2021.09.15 |