๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ ๋ค์ค ํ๋ก๊ทธ๋๋ฐ ์์คํ ์์ ๋ณต์์ ํ๋ก์ธ์ค๋ฅผ ์ฃผ๋ฉ๋ชจ๋ฆฌ์ ์์ฉํ๊ธฐ ์ํ์ฌ ์ฃผ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๋์ ๋ถํ ํ๋ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ์์ ์ ์๋ฏธํ๋ค. ์ด๋ฌํ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ๊ธฐ๋ฒ์ ํฌ๊ฒ ๋๊ฐ์ง๋ก ๋๋์ด์ง๋ค. ์ฐธ๊ณ ) ๋ค์ค ํ๋ก๊ทธ๋๋ฐ ์์คํ ์ด๋? ์ฃผ๊ธฐ์ต์ฅ์น ์์ 2๊ฐ ์ด์์ ํ๋ก๊ทธ๋จ์ด ์ ์ฌ๋์ด ํ๋์ ํ๋ก๊ทธ๋จ์ด ์ ์ถ๋ ฅ ๋์์ ํ๊ฒ ๋๋ฉด CPU๋ก ํ์ฌ๊ธ ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ ์ํํ๋๋ก ํ์ฌ ํจ์จ์ ์ฆ๊ฐ์ํค๊ณ ์ ํ๋ ๋ฐฉ๋ฒ์ด๋ค. ์ฐ์ ๋ฉ๋ชจ๋ฆฌ ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ ์ ์ฒด๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์์ ์ผ๋ก ํ ๋น๋์ด์ผ๋ง ํ๋ ๊ด๋ฆฌ ๊ธฐ๋ฒ ๊ณ ์ ๋ถํ ๊ธฐ๋ฒ : ๋ฉ๋ชจ๋ฆฌ๊ฐ ๊ณ ์ ๋ ํํฐ์ ์ผ๋ก ๋ถํ , ๋ด๋ถ ๋จํธํ ๋ฐ์ ๋์ ๋ถํ ๊ธฐ๋ฒ : ํํฐ์ ๋ค์ด ๋์ ์์ฑ๋๋ฉฐ ์์ ์ ํฌ๊ธฐ์ ๊ฐ์ ํํฐ์ ์ ์ ์ฌ, ์ธ๋ถ ๋จํธํ ๋ฐ์ ์ต์ด ์ ํฉ(First Fit) : ๊ฐ์ฅ ์ฒ์ ๋ง๋๋..
๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด ๋ฌด๊ฒฐ์ฑ ์ ์ฝ ์กฐ๊ฑด? ์ฌ์ฉ์์ ์ํ DB ๊ฐฑ์ ์ด DB์ ์ผ๊ด์ฑ์ ๊นจ์ง ์๋๋ก ๋ณด์ฅํ๋ ์๋จ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ ์กฐ๊ฑด์ ๋ฌด์ํ๋ ์์ ์ด๋ค ํ์์ด ์๊ฐ์ ์ฒญ์ ํ๋๋ฐ, ํ์ ์ ๋ณด์ ๋ํ ๋ฐ์ดํฐ๊ฐ ์๋ ๊ฒฝ์ฐ ํ์์ ํ๋ฒ๊ณผ ๊ณผ๋ชฉ์ ๋ฒํธ๋ฅผ ๋น๊ตํ๋ ๊ฒฝ์ฐ ํ์์ด ์ํดํด์, ํ์ ๋ฆด๋ ์ด์ ์์๋ ์ ๋ณด๋ฅผ ์ ๊ฑฐํ์ง๋ง ์์ง ์๊ฐ ๋ฆด๋ ์ด์ ์๋ ๋จ์ ์๋ ๊ฒฝ์ฐ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด์ ์ด๋ป๊ฒ ๊ตฌํํด์ผ ํ๋๊ฐ? ๋จ์ง, ์ ์ฝ์กฐ๊ฑด์ ๋ช ์ํด์ฃผ๋ฉด DBMS๊ฐ ์์์ ์ฒ๋ฆฌํด์ค! ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด ์ข ๋ฅ ๊ฐ์ฒด(์ํฐํฐ) ๋ฌด๊ฒฐ์ฑ ๊ธฐ๋ณธํค๋ NULL ๊ฐ์ด ์ฌ ์ ์์ผ๋ฉฐ, ์ค๋ณต๋ ์ ์์์ ๋ํ๋ด๋ ์ ์ฝ์กฐ๊ฑด ๋จ, ๋์ฒดํค๋ NULL ๊ฐ์ด ์ฌ ์ ์์ ๊ฐ์ฒด๋ฅผ ์๋ณํ ๋ ์ค๋ฅ๊ฐ ์๋๋ก ํ๋ ์ ์ฝ์กฐ๊ฑด ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ์ธ๋ํค๊ฐ ๊ธฐ๋ณธ ํค๊ฐ ์๋๋ฉด NULL ๊ฐ์ด ์ฌ ์..
ํ๋ก์ธ์ค? ์ค๋ ๋? https://ybdeveloper.tistory.com/20?category=782261 [OS] ํ๋ก์ธ์ค๋? ํ๋ก๊ทธ๋จ? "์ปดํจํฐ๋ฅผ ์คํ์ํค๊ธฐ ์ํด์ ์ฐจ๋ก๋๋ก ์์ฑ๋ ๋ช ๋ น์ด ๋ชจ์" ํน์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๊ณ ์๋ ํน์ ์์ ์ ์ํ ํ๊ธฐ ์ํ ์ผ๋ จ์ ๋ช ๋ น๋ฌธ์ ์งํฉ์ฒด์ด๋ค. ๋๋ถ๋ถ์ ํ๋ก๊ทธ๋จ๋ค์ ํ๋๋์คํฌ ๋ฑ์ ๋ณด์กฐ.. ybdeveloper.tistory.com ํ๋ก์ธ์ค : ํ๋ก๊ทธ๋จ์ ๋ณต์ฌํ์ฌ ๋ฉ๋ชจ๋ฆฌ ์์์ ์คํ์ค์ธ ์์ ์ ์๋ฏธ ์ค๋ ๋ : ํ๋ก์ธ์ค ๋ด๋ถ์์ ์คํ๋๋ ์ฌ๋ฌ ์์ ๋จ์ ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋ก์ธ์ค๋ง๋ค ์ต์ 1๊ฐ์ ์ค๋ ๋๋ฅผ ์์ ํ๊ณ ์์ ์) Android์ UI Thread ํ๋ก์ธ์ค ๊ตฌ์กฐ & ์ค๋ ๋ ๊ตฌ์กฐ ํ๋ก์ธ์ค๋ ๊ฐ๊ฐ ๋ณ๋์ ์ฃผ์ ๊ณต๊ฐ์ ํ ๋น๋ฐ์ผ๋ฉฐ, ๋ ๋ฆฝ์ ์ Code : ์ฝ๋ ์์ฒด..
DBMS์ ์ ์ ํ์ผ ์์คํ ์ ๋ฌธ์ ์ ์ธ ๋ฐ์ดํฐ์ ์ค๋ณต์ฑ๊ณผ ์ข ์์ฑ ๋ฑ์ ๋ฌธ์ ๋ฅผ ์ต์ํํ๊ธฐ ์ํด ๋ฑ์ฅํ์์ผ๋ฉฐ, ์ฌ์ฉ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ์ ์ค๊ณ ์ญํ ์ ํฉ๋๋ค. ์ฆ, ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ด์ฉ์ ์ ์,์กฐ์,์ ์ดํ ์ ์๋๋ก ํจ์ผ๋ก์จ ๋ชจ๋ ์ฌ์ฉ์๋ ์์ฉ ํ๋ก๊ทธ๋จ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ณต์ ํ ์ ์๋๋ก ๊ด๋ฆฌ, ์ด์ํด์ฃผ๋ ์ํํธ์จ์ด ์์คํ ์ ์๋ฏธํฉ๋๋ค. ์ค๋ณต์ฑ : ๋์ผํ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ ๊ณณ์ ์ค๋ณต ์ ์ฅ๋๋ ์ฑ์ง์ ์๋ฏธ ์ข ์์ฑ : ํ๋์ ๋ฐ์ดํฐ๊ฐ ์ญ์ ,๋ณ๊ฒฝ๋จ์ ๋ฐ๋ผ ๋ค๋ฅธ ๋ฐ์ดํฐ๊ฐ ์์น ์๊ฒ ์ํฅ์ ๋ฐ๋ ์ฑ์ง์ ์๋ฏธ DBMS์ ํ์ ๊ธฐ๋ฅ 1. ์ ์ ๊ธฐ๋ฅ ์ ์ฅ๋ ๋ฐ์ดํฐ์ ํํ, ๊ตฌ์กฐ ๋ฑ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ์ ๊ดํ ์ฌ๋ฌ ๊ฐ์ง ์ฌํญ์ ์ ์ํ๋ ๊ธฐ๋ฅ 2. ์กฐ์ ๊ธฐ๋ฅ ์ฌ์ฉ์์ ์๊ตฌ์ ๋ฐ๋ผ ๊ฒ์, ๊ฐฑ์ , ์ฝ์ , ์ญ์ ๋ฑ์ ์ง์ํ๋ ๊ธฐ๋ฅ 3. ..
Key์ ๊ฐ๋ ๊ฒ์,์ ๋ ฌ์์ ํํ์ ๊ตฌ๋ถํ ์ ์๋ ๊ธฐ์ค ์์ฑ ๋ฐ ์์ฑ ์งํฉ์ด๋ค. Key์ ์ข ๋ฅ Candidate Key(ํ๋ณดํค) ํํ์ ์ ์ผํ๊ฒ ์๋ณํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ์์ฑ๋ค์ ๋ถ๋ถ ์งํฉ (๊ธฐ๋ณธํค๋ก ์ฌ์ฉํ ์ ์๋ ์์ฑ๋ค์ ์งํฉ) ํ๋ณดํค๊ฐ ๋๊ธฐ ์ํด์๋ ์ ์ผ์ฑ๊ณผ ์ต์์ฑ์ ๋ชจ๋ ๋ง์กฑํด์ผ ํ๋ค. ์ ์ผ์ฑ : ๊ฐ ํํ์ ์๋ณํ ์ ์์ ์ต์์ฑ : ๊ฐ ํํ์ ์๋ณํ ์ ์๋ ์ต์ ๊ตฌ์ฑ Primary Key(๊ธฐ๋ณธํค) ๊ธฐ๋ณธํค๋ ํ๋ณดํค ์ค์์ ํํ์ ์๋ณํ๊ธฐ ์ํด ์ ์ผํ๊ฒ ์ ํ๋ ํค๋ฅผ ๋งํ๋ค. ๊ธฐ๋ณธํค๋ ์ค๋ณต๋ ์ ์์ผ๋ฉฐ, NULL๋ ์ฌ ์ ์๋ค. ํ๋ณดํค์ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ์ผ์ฑ๊ณผ ์ต์์ฑ์ ๋ชจ๋ ๋ง์กฑํด์ผ ํ๋ค. Alternate Key(๋์ฒดํค) ๋์ฒดํค๋ ํ๋ณดํค ์ค์์ ๊ธฐ๋ณธํค๋ฅผ ์ ์ธํ ํค๋ค์ ์๋ฏธํ๋ค. ํ๋ณดํค - ๊ธฐ๋ณธํค = ..