Database15 ์ค๋ฌด์์ ๋ฐ์ํ ๋ฐ๋๋ฝ์ ํด๊ฒฐํ ๋ฐฉ๋ฒ ๋ฐ ๊ณ ๋ฏผ์ ๋ฐฑ์๋ ๊ฐ๋ฐ์ ํ๋ค ๋ณด๋ฉด ์ฑ๋ฅ ๊ฐ์ ์ ์ํด ๊ตฌ์กฐ๋ฅผ ๋ฐ๊พธ๋ ์ผ์ด ๋ง์ต๋๋ค. ํ์ง๋ง ์ฑ๋ฅ์ ๊ฐ์ ํ๋ ๊ณผ์ ์์ ๋์์ฑ ๋ฌธ์ ๊ฐ ์๋กญ๊ฒ ๋ฐ์ํ๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค.์ด๋ฒ ๊ธ์์๋ ์ ๊ฐ ์ค์ ๋ก ๊ฒช์๋ ๋ฐ๋๋ฝ ๋ฌธ์ ์ ๊ทธ ํด๊ฒฐ ๊ณผ์ ์ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค. ๋จ์ํ “์ด๋ ๊ฒ ํด๊ฒฐํ๋ค”๊ฐ ์๋๋ผ, ์ ๊ทธ๋ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ๊ณ ์ด๋ค ์ ํ์ง๋ฅผ ๊ณ ๋ฏผํ๋์ง๊น์ง ํฌํจํด ์์ฑํ์ต๋๋ค. 1๏ธโฃ ๋ฐ๋๋ฝ์ด๋ ๋ฌด์์ธ๊ฐ?๋ฐ๋๋ฝ(Deadlock)์ ๋จ์ํ “๋ฝ์ด ๊ฑธ๋ ค์ ๋ฉ์ถ ์ํ”๊ฐ ์๋๋๋ค.๋ณด๋ค ์ ํํ๋ ๋ค์๊ณผ ๊ฐ์ ์ํ๋ฅผ ์๋ฏธํฉ๋๋ค.๋ ๊ฐ ์ด์์ ์์ ์ด ์๋ก๊ฐ ๊ฐ์ง ์์์ ๊ธฐ๋ค๋ฆฌ๋ฉด์ ์์ํ ์งํํ ์ ์๋ ์ํ ์ด๋ฅผ ์กฐ๊ธ ๋ ์ผ๋ฐ์ ์ธ ์ปดํจํฐ ๊ณตํ ๊ด์ ์์ ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.๊ฐ ์์ (์ค๋ ๋, ํ๋ก์ธ์ค, ํธ๋์ญ์ )์ ์์์ ์ ์ ํ ์ํ์์๋ค๋ฅธ ์.. Database 2026. 3. 25. MVCC (Multi-Version Concurrency Control) ์ดํดํ๊ธฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ณต๋ถํ๋ค ๋ณด๋ฉด ๋์์ฑ ์ ์ด์์ ๋น๊ด์ ๋ฝ๊ณผ ๋๊ด์ ๋ฝ ๋ง๊ณ ๋ MVCC (Multi-Version Concurrency Control) ๋ผ๋ ๊ฐ๋ ์ ์ ํ๊ฒ ๋ฉ๋๋ค. PostgreSQL, MySQL, Oracle ๊ฐ์ ๋๋ถ๋ถ์ ํ๋์ ์ธ RDBMS๋ MVCC ๊ธฐ๋ฐ ๋์์ฑ ์ ์ด๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.์ค๋์ MVCC๊ฐ ์ ํํ ๋ญ์ง, Lock ๋ฐฉ์๊ณผ ๋ฌด์์ด ๋ค๋ฅธ์ง, ๋ด๋ถ ๋์ ์๋ฆฌ์ ๋ํด์๋ ํ์ตํด ๋ณด์์ต๋๋ค. ๋์ ๊ธฐ์ค์ PostgreSQL ๋ก ํ์ตํ์์ต๋๋ค. ๊ฐ DB ๋ง๋ค MVCC ๊ธฐ์ ์ ๋ฐฉ์์ด ์ ์์๋ฅผ ๋ณด์๊ณ MYSQL๋ ์ ๋ ๊ฒ ๋์ํ๊ตฌ๋ ์๊ฐํ์๋ฉด ์ ๋ฉ๋๋ค. ํฐ ํ์์ ๋ชฉํ์ ๊ฐ๋ ์ ๊ฐ์ง๋ง ๊ทธ๊ฑธ ๊ตฌํํ ๋ฐฉ์์ DB ๋ง๋ค ๊ฐ๊ฐ ๋ค๋ฆ ๋๋ค. 1. MVCC๋ ๋ฌด์์ธ๊ฐMVCC (Multi-Vers.. Database 2026. 3. 8. RDB์์ Redis๋ก๐ช ์ธ์ฆ ํ ํฐ ์ ์ฅ์ ๊ตฌ์กฐ ๊ฐ์ ๊ณผ 73% ์ ์ฅ ๊ณต๊ฐ ์ ๊ฐ ํ์ฌ ์ฌ๋ด์ ๋ค์ํ ์ ๋ฌด ์์คํ ์ด 3.0 ํ๊ฒฝ์์ 5.0 ํ๊ฒฝ์ผ๋ก ์ ์ง์ ์ผ๋ก ๋ฐ์ ํ๊ณ ์์ต๋๋ค. ํนํ ์ผํ๋ชฐ ๋ฐ์ดํฐ ์์ง ์ ๋ฌด๋ฅผ ๊ณ ๋ํํ๋ ๊ณผ์ ์์ ์ธ์ฆ ํ ํฐ ๊ด๋ฆฌ ๋ฐฉ๋ฒ์ ๊ฐ์ ํ ์ ์๋ค๋ ์๊ฐ์ ํ๊ณ , ๋ฐฉ์์ ์ ๋ฆฌํ์ฌ ์ ์์๋ฅผ ์์ฑํ๊ฒ ๋์์ต๋๋ค.์ด๋ฒ ๊ธ์ ๋น์ ์ ๊ฐ ํ์ฅ๋๊ณผ ๋ณธ๋ถ์ฅ๋๊ป ๋๋ ธ๋ ์ ์์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ฌ๊ตฌ์ฑํ ๊ฒ์ ๋๋ค. ์ธ์ฆ ํ ํฐ ์ ์ฅ์๋ฅผ RDB์์ Redis๋ก ์ ํํ๋ ๊ณผ์ ์์์ ๋ฐฐ๊ฒฝ, Redis๋ฅผ ์ ํํ ์ด์ , ์ค์ ์ ์ฉ ์ ๊ณ ๋ คํด์ผ ํ ์ฌํญ, ๊ทธ๋ฆฌ๊ณ ๋ฌด์๋ณด๋ค ์ค์ํ ์ค์ ๊ฐ์ ํจ๊ณผ๋ฅผ ๊ณต์ ํ๊ณ ์ ํฉ๋๋ค.ํนํ ์ ์ฅ ๊ณต๊ฐ ๊ด์ ์์ Redis ์ ํ์ ์๋นํ ์ฑ๊ณผ๋ฅผ ๋ณด์์ต๋๋ค. ๊ธฐ์กด RDB ๋ฐฉ์์ ๋์ผํ ํ ํฐ์ด 3.0/5.0 ํ ์ด๋ธ์ ์ค๋ณต ์ ์ฅ๋๋ฉฐ ์ค์ง์ ์ธ ๋ฐ์ดํฐ ์ ์ฅ ๊ณต๊ฐ ํฌ๊ธฐ๊ฐ 5.6KB ์ด.. Database 2025. 11. 16. ์ฟผ๋ฆฌ ํ๋ - ๋์ฉ๋ ๋ฐ์ดํฐ๋ฅผ ํฌํจํ๋ ํน์ ์ปฌ๋ผ ์ ์ธํ๊ณ ์กฐํ ๊ฐ์Spring Data JPA ๋ฅผ ์ฌ์ฉํด์ DB ๋ฅผ ์กฐํํ๋ฉด ์ง์ฐ ๋ก๋ฉ์ผ๋ก ์ค์ ๋์ด ์๋ ์ฐ๊ด ๊ด๊ณ ๋ฐ์ดํฐ๋ฅผ ์ ์ธํ๊ณ ์ฒ์๋ถํฐ ๋ชจ๋ ๋ฐ์ดํฐ ์ปฌ๋ผ ๊ฐ๋ค์ ๋ถ๋ฌ์จ๋ค. JPA ํน์ ์ ์ฒ์์ ๋ชจ๋ ๊ฐ๋ค์ ์ด๊ธฐํ ์ํค๊ณ ์ค๋ ์ต์ ๊ธฐ์ค์ผ๋ก ๋ํฐ ์ฒดํน์ ํด์ผํ๊ธฐ ๋๋ฌธ์ด๋ค. ํ์ง๋ง readOnly = true์ผ ๊ฒฝ์ฐ๋ ๋ํฐ์ฒดํน์ ํ ํ์๊ฐ ์๊ณ ์ํ๋ ๊ฐ๋ง ์ป์ผ๋ฉด ๋๊ธฐ ๋๋ฌธ์ ๋ชจ๋ ๊ฐ์ ์ด๊ธฐํํด์ ์ป์ ํ์๋ ์๋ค.์๋ฅผ ๋ค์ด DocumentDB ์ ๊ฐ์ NoSQL์ ์ฌ์ฉํ์ง ์๊ณ , RDB๋ก ์ํฐํด ์ ๋ณด๋ฅผ ์ ์ฅํ๋ค๊ณ ์น์. @Entitypublic class Article { @Id @GeneratedValue private Long id; private String title; @Col.. Database 2024. 11. 13. CAP ์ด๋ก - ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ถ์ฐ ์์คํ ์ด๋ก ์์คํ ์ํคํ ์ฒ๋ฅผ ๊ณต๋ถํ๋ค๋ณด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ถ์ฐ์์คํ ์ ๊ณต๋ถํ๊ฒ ๋๋ ์ผ์ด ์๊ฒผ๋ค. ๊ทธ๋ CAP ์ด๋ก ์ด๋ผ๋ ๋จ์ด๋ฅผ ์ฒ์ ๋ดค๋๋ฐ, Capability ์ ์๊ธ์๋ฅผ ๋ฐ์ ๋ถ์ฐ ์์คํ ์์ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ๊ฐ์ฉ ๋ฅ๋ ฅ์ด๋ ๋ฐ์ดํฐ ๋ฒ ์ด์ค ์ฑ๋ฅ์ ๊ด๋ จ๋ ์ด๋ก ์ธ์ค ์์๋ค.ํ์ง๋ง ๊ณต๋ถํด๋ณด๋ ์ ํ ๋ค๋ฅธ ๊ฐ๋ ์ด์๊ณ , CAP ์ด๋ก ์ ๋ถ์ฐ ์์คํ ์ DB ํ๊ฒฝ์์ ๋คํธ์ํฌ ๋ถํ ์ด ๋ฐ์ํ๋ฉด ์์คํ ์ ์ผ๊ด์ฑ๊ณผ ๊ฐ์ฉ์ฑ ์ค ํ๋๋ฅผ ์ ํํด์ผ ํ๋ฉฐ, ๋ ๋ค๋ฅผ ๋์์ ์๋ฒฝํ๊ฒ ๋ณด์ฅํ ์ ์๋ค๋ ์ด๋ก ์ด์๋ค. ๋๊ฒ ์ค์ํ ๊ฐ๋ ์ธ ๊ฒ ๊ฐ์์ ๊ธฐ๋ก์ผ๋ก ๋จ๊ฒจ๋๋ ค๊ณ ํ๋ค.๊ฐ๋ ๋จผ์ ๊ฐ๋ ์ ๋งํ์๋ฉด ๋ค์๊ณผ ๊ฐ๋ค.CAP ์ด๋ก (CAP theorem)์ ๋ถ์ฐ ์์คํ ์์ ์ธ ๊ฐ์ง ์ฃผ์ ํน์ฑ์ธ ์ผ๊ด์ฑ(Consistency), ๊ฐ์ฉ์ฑ(Availability), ๊ทธ๋ฆฌ.. Database 2024. 9. 28. (23.01.10)Oracle ๋ฐ์ดํฐ๋ฒ ์ด์ค : on update cascade ๊ธฐ๋ฅ trigger๋ก ๊ตฌํํ โโon update cascade ๊ธฐ๋ฅ trigger๋ก ๊ตฌํํ๊ธฐโโ ์ค๋ผํด๊ณผ MS-SQL์ FK ์ ์ฝ์ ๊ฑธ๋ ON DELETE CASCADE ๋ฅผ ์ง์ํ์ง๋ง, ON UPDATE CASCADE๋ MS-SQL ๋ง ์ง์ํ๋ค. ์ค๋ผํด์์๋ ON UPDATE CASCADE๊ฐ ๋ง์ด ํ์ ํ๊ธฐ์ ์กฐ๊ธ ๋ถํธํ์ง๋ง Trigger๋ฅผ ์ด์ฉํด ๊ตฌํํ๋ ๋ฐฉ๋ฒ์ด ์๋ค. ํธ๋ฆฌ๊ฑฐ ํน์ง - AFTER, BEFORE๋ฅผ ํตํด TRIGGER๊ฐ ์ธ์ ์คํ๋ ์ง ๊ฒฐ์ - FOR EACH ROW, ์ฆ ๋ชจ๋ ํ ์ด๋ธ์ ๋ฐ๋ณตํ๋ฉด์ ์คํ๋๋ค - BEGIN๊ณผ END ์ฌ์ด์ SQL๋ฌธ ์ฝ์ ๊ฐ๋ฅ, ์ด๋ ๋ฐ๋์ ; ๋ก ๋์ ๋ด์ฃผ์ด์ผ ํ๋ค!! CREATE TRIGGER ํธ๋ฆฌ๊ฑฐ๋ช AFTER UPDATE OF ๋ถ๋ชจํ ์ด๋ธ์ PK ์ปฌ๋ผ๋ช ON ๋ถ๋ชจํ ์ด๋ธ๋ช FOR EAC.. Database 2023. 1. 11. (23.01.09.) Oracle ๋ฐ์ดํฐ๋ฒ ์ด์ค : on delete cascade ์ค์ ํ๊ธฐ โโon delete cascadeโโ ๊ฒ์๊ธ๊ณผ ๋๊ธ ๊ฐ์ด ์ข ์ ๊ด๊ณ๊ฐ ์๋ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ฉด ๋ถ๋ชจ ๋ฐ์ดํฐ๊ฐ ์ญ์ ๋๋ฉด ์์๋ฐ์ดํฐ๋ ์๋์ ์ผ๋ก ์ญ์ ๋์ด์ผํ๋ค. ์ค๋ผํด์์ ์ด ๊ธฐ๋ฅ์ด ๋ฐ๋ก on delete cascade ์ด๋ค. ๊ฒ์๊ธ์ ์ญ์ ํ๋ ค๊ณ ํ๋ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด ์๋ฐฐ๋ก ์ญ์ ๊ฐ ์๋๊ณ 500์๋ฌ๊ฐ ๋์๋ค. ์ฐพ์๋ณด๋ delete cascade ์ ์ฝ์กฐ๊ฑด์ ์ค์ ํด๋์ผ ๋ถ๋ชจํ ์ด๋ธ ์ญ์ ์ ์์ํ ์ด๋ธ๋ ๊ฐ์ด ์ญ์ ๋๋ ๋ฐฉ๋ฒ์ ์ฐพ์๋ค. alter table ์์ํ ์ด๋ธ๋ช add constraint ์ค์ ํ ์ ์ฝ์กฐ๊ฑด๋ช foreign key (์ธ๋ํค๋ก ์ค์ ํ ํค) references ๋ถ๋ชจํ ์ด๋ธ๋ช (์ธ๋ํค๋ก ์ค์ ํ ํค) on delete cascade; !!์ธ๋ํค ์ ์ฝ์กฐ๊ฑด์ ์ถ๊ฐํ๊ธฐ ์ํด์ ๊ธฐ์กด์ ์ ์ฝ์กฐ๊ฑด์ ์ญ์ ํ, ๋ค์ ๋ฑ๋กํด์ค.. Database 2023. 1. 11. (22.12.09)Database: Join query, CROUP BY, Javascript Timing Events โโJoin queryโโ -inner join : ์ฐ๊ฒฐ ์กฐ๊ฑด์ ๋ง๋ ํ๋ง ์ฐ๊ฒฐํด์ ๊ฐ์ ธ์จ๋ค. -outer join : ์ฐ๊ฒฐ ์กฐ๊ฑด์ ๋ฒ์ด๋ ์์ด๋ ๊ฐ์ ธ์จ๋ค. left outer join right outer join full outer join -cross join : ์กฐ๊ฑด ์์ด ์ฐ๊ฒฐ ์ง๋๋ค (๊ธฐ์ค ํ ์ด๋ธ์ ํ ์ x ์ฐ๊ฒฐํ ํ ์ด๋ธ์ ํ ์ ๋งํผ์ ํ์๋ฅผ ๊ฐ์ง ๊ฒฐ๊ณผ๊ฐ ๋์จ๋ค.) โโCROUP BY ~โโ โโJavascript Timing Eventsโโ - setTimeout (function ์ด๋ฆ, milliseconds(์ค์ ํ ์๊ฐ๋๋ฃ๊ธฐ ex: 3000 > 3์ด)) : 1ํ์ฉ ํ์ด๋จธ - setInterval (function ์ด๋ฆ, ์ค์ ํ ์๊ฐ) : ์ค์ ํ ์๊ฐ ๋ง๋ค ์ฃผ๊ธฐ์ ์ธ ํ์ด๋จธ Database 2022. 12. 9. (22.12.06)Database : MVC๋ฐฉ์ ๊ฒ์ํ ๋ต๊ธ ๋ฌ๊ธฐ (Oracle ๊ณ์ธต ์ฟผ๋ฆฌ ํ์ฉ) โโ๊ฒ์ํ ๋ต๊ธ ๋ฌ๊ธฐ- ๊ณ์ธต๊ตฌ์กฐ ์ง์(hierarchycal Query)โโ ์ค๋ผํด์์ ์ ๊ณตํด์ฃผ๋ ๊ณ์ธต๊ตฌ์กฐ ์ง์(hierarchycal Query)์ ํ์ฉํ์ฌ ๊ฒ์ํ์ ๋ต๊ธ ๋ฃ๊ธฐ ๊ธฐ์กด ๊ฒ์ํ [(22.12.02) ๊ฒ์ํ ๊ธ ์ฐธ๊ณ !!!] ์์ ๋ต๊ธ ๋ฌ๊ธฐ ๊ธฐ๋ฅ ๋ง๋ค๊ธฐ M : BoardVO.java , BoardDAO.java V : boardList.jsp , boardAdd.jsp , boardDetail.jsp , boardEdit.jsp , boardReple.jsp C : ์๋ธ๋ฆฟ MVC Service : BoardService.java ํ์ฌ ๊ธ์ ์๋ java, jsp ํ์ผ์ (22.12.02)๊ธ ์ฐธ๊ณ BoardService.java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1.. Database 2022. 12. 6. (22.12.05) Database : ๊ณ์ธต๊ตฌ์กฐ ์ง์(hierarchycal Query), pagination(ํ์ด์ง ๋๋๊ธฐ),VIEW ๋ง๋ค๊ธฐ, ์ธ๋ถํค ์ ์ฝ์กฐ๊ฑด โโ๊ณ์ธต๊ตฌ์กฐ ์ง์(hierarchycal Query)โโ -๋ถ๋ชจ๊ธ /์์๊ธ ์ ๋ ฌ ๋๊ตฌ์๋์ ๋๊ตฌ๋ฅผ ๋ถ์ด๋ผ root๋ฅผ ์ ํด์ฃผ๋ฉด ๊ฐ์ง๊ฐ ๋ถ๋๋ค ์์ฌ์ ์ฌ์๋ฒํธ๋ก ์ ๋ ฌ์ ํ๊ฒ ๋๋ค๋ฉด ๋ฃจํธ๋ฅผ ์ ํด์ฃผ๊ณ ๊ทธ๊ณณ๋ถํฐ ์ฌ์๋ฒ์ ์์ฌ๋ฒํธ๊ฐ ๊ฐ์ ์ฌ๋๋ผ๋ฆฌ ์ ๋ ฌํ๋ค. ํ์ง๋ง ๋ค์ฌ์ฐ๊ธฐ๋ฅผ ํ์ง ์์ ๋ณด๊ธฐ๊ฐ ๋ถํธํ๋ค. LPAD๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์ด ์ฐ๊ธฐ๋ฅผ ํด์ค๋ค. ํธ๋ฆฌ์ ๊ฐ์ง๋ค์ ๊ฐ์ง์น๊ธฐ ํ ๋งํผ ๋ค์ฌ์ฐ๊ธฐ ๋๊ฒ ๋๋ค. NAME : KING์ ๋ ๋ฒจ์ด 1์ด๋ฏ๋ก ๋ ๋ฒจ 2๋ถํฐ ๋ค์ฌ์ฐ๊ธฐ ํด์ฃผ๊ณ ์ถ์ผ๋ (LEVEL-1)์ ํด์ค๋ค. ์ด๋ฆ์ ๋น์นธ์ ์ฃผ์ด ๋ค์ฌ์ฐ๊ธฐ ํ๊ณ ์ถ์๋ฐ ์์คํ ์์์ ๊ณต๋ฐฑ์ ํ๋๋ง ์ทจ๊ธ์ ํ๋ค. ๋ฐ๋ผ์ ํน์๋ฌธ์๋ฅผ ์ฌ์ฉํด์ค๋ค. 'ใฑ'์ ์ฐ๊ณ ํ์ ํค๋ฅผ ๋๋ฅด๋ฉด 1๋ฒ์ ๊ณต๋ฐฑ์ด ์๋ ๊ฑธ ํ์ธํ ์ ์๋ค. ๊ณต๋ฐฑ๋์ '*'์ ์ด๋ค๋ฉด ์ด์ .. Database 2022. 12. 5. (22.12.02)Database : DB์์ ์ ๋ณด๋ฅผ ๊บผ๋ด์ค๊ณ ์ถ๊ฐํ๋ ์น ํ๋ก๊ทธ๋๋ฐ(๊ฒ์ํ ๊ธ ์ฐพ๊ธฐ,์ถ๊ฐ,์์ ,์ญ์ CRUD) โโ๊ฒ์ํ CRUDโโ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(name = "DBBoardServlet", urlPatterns = { "/DBBoard" }) public class BoardServle.. Database 2022. 12. 2. (22.12.01)Database : ์ฌ์์ ๋ณด ์ญ์ ํ๊ธฐ, ์ถ๊ฐํ๊ธฐ, DB์์ ํ ์ด๋ธ ์์ฑ, ๋ ์ง ๊ฐ์ ธ์ค๊ธฐ, ์ํ์ค โโ์ฌ์์ ๋ณด ์ญ์ ํ๊ธฐโโ ํ์์ ๋ณด๋ฅผ ์ญ์ ํ๋ฉด DB์์๋ ํ ์ด๋ธ์์ ๊ฐ์ฒด ์ ๋ณด๋ฅผ ์ญ์ ํ๊ธฐ empDAO.java 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 1.. Database 2022. 12. 1. ์ด์ 1 2 ๋ค์