๋ฐ์ํ
Notice
Recent Posts
Recent Comments
Link
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- ์๋๋ก์ด๋ ์คํ๋์ค
- serverless
- ์๋ฐ
- ์๋ฐ์คํฌ๋ฆฝํธ
- streamlit
- db
- ์๋ฐ์ด๋ณด
- ์๋ฐ์คํฌ๋ฆฝํธ ๊ณต๋ถ
- java
- MySQL
- Flutter
- ์คํธ๋ฆผ๋ฆฟ ๊ธฐ๋ณธ
- ํ์ด์ฌ๊ณต๋ถ
- ์น๋์๋ณด๋ ์ ์
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์๋ฐ๊ณต๋ถ
- ์๋ฐ๊ธฐ์ด
- ์น๋์๋ณด๋ ๊ธฐ์ด
- Streamlit๊ธฐ๋ณธ
- ์คํธ๋ฆผ๋ฆฟ
- ํ๋ค์ค๊ณต๋ถ
- Streamlit๊ธฐ์ด
- RESTful API
- Android
- JavaScript
- ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ
- Pandas
- ์๋ฐํ๋ก๊ทธ๋๋ฐ
- ํ๋ค์ค
- ํ์ด์ฌ
Archives
- Today
- Total
ruriruriya
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค MySQL - foreign key์ on delete cascade ์ค์ ๋ฐฉ๋ฒ๊ณผ ๋์ ๋ฐฉ๋ฒ ๋ณธ๋ฌธ
๐ข๏ธDB/MySQL
[DB] ๋ฐ์ดํฐ๋ฒ ์ด์ค MySQL - foreign key์ on delete cascade ์ค์ ๋ฐฉ๋ฒ๊ณผ ๋์ ๋ฐฉ๋ฒ
๋ฃจ๋ฆฌ์ผใ 2023. 12. 4. 11:49๋ฐ์ํ
MySQL์์ ON DELETE CASCADE๋
์ธ๋ ํค(foreign key) ์ ์ฝ ์กฐ๊ฑด์์ ์ฌ์ฉ๋๋ ์ต์
์ค ํ๋์ด๋ค.
์ด ์ค์ ์ ์ฌ์ฉํ๋ฉด ์ฐธ์กฐํ๋ ํ
์ด๋ธ์์ ํ์ ์ญ์ ํ ๋,
ํด๋น ํ์ ์ฐธ์กฐํ๋ ๋ค๋ฅธ ํ
์ด๋ธ์ ๊ด๋ จ๋ ํ๋ ์๋์ผ๋ก ์ญ์ ๋๋ค.
์๋ฅผ ๋ค์ด, USER ํ
์ด๋ธ๊ณผ PHOTOS ํ
์ด๋ธ์ด ์๊ณ ,
PHOTOS ํ
์ด๋ธ์ ์ธ๋ ํค๊ฐ USER ํ
์ด๋ธ์ ์ฐธ์กฐํ๋ ๊ฒฝ์ฐ๋ฅผ ์๊ฐํด๋ณด์.
USER ํ
์ด๋ธ์ ํ์ด ์ญ์ ๋๋ฉด, ์ด์ ์ฐ๊ด๋ PHOTOS ํ
์ด๋ธ์ ํ๋ ์๋์ผ๋ก ์ญ์ ๋๋ค.
foreign key์
on delete cascade ์ค์ ๋ฐฉ๋ฒ
1. ์ธ๋ ํค(foreign key) ์ค์
ํด๋น ํ
์ด๋ธ ์ค์ ์ ๋ค์ด๊ฐ์ Foreign Key๋ฅผ ์๋ก ์์ฑํ๋ฉด์
Foreign Key Options - on Delete : ๋ฅผ CASCADE๋ก ์ ํํ๋ค.
2. index ์ํธ์์ foreign ํค ์์ฑ๋ ๊ฒ์ ํ์ธ
3. USER ํ
์ด๋ธ์์ id 2๋ฒ์ ์ญ์ ํ๋ฉด
PHOTOS ํ
์ด๋ธ ์์๋ user_id = 2๊ฐ ์ญ์ ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
delete from users
where id = 2;
select * from users;
select *
from photos
where user_id = 2;
CASCADE ๋์๋ฐฉ๋ฒ ์ ๋ฆฌ
- A ํ
์ด๋ธ์์ ํ์ด ์ญ์ ๋๋ฉด,
ํด๋น ํ์ ์ฐธ์กฐํ๋ B ํ ์ด๋ธ์ ํ๋ ์๋์ผ๋ก ์ญ์ ๋๋ค. - ๋ง์ฝ ์ญ์ ํ๋ ค๋ A ํ
์ด๋ธ์ ํ์ ์ฐธ์กฐํ๋ B ํ
์ด๋ธ์ ํ์ด ์กด์ฌํ์ง ์๋๋ค๋ฉด,
์๋ฌด๋ฐ ์ํฅ์ ์ฃผ์ง ์๋๋ค.
๋ฐ์ํ