๋ชฉ๋ก์ „์ฒด ๊ธ€ (1005)

๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[SQL] ๋ฐ์ดํ„ฐ ๋‹ค๋ฃจ๊ธฐ

๐Ÿ‘ฉ‍๐Ÿ’ป SQL (Structed Query Language) : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ ‘๊ทผํ•˜๊ณ  ์กฐ์ž‘ํ•˜๊ธฐ ์‰ฌ์šด ํ‘œ์ค€ ์–ธ์–ด โญ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๊ณต์œ ํ•ด ์‚ฌ์šฉํ•  ๋ชฉ์ ์œผ๋กœ ํ†ตํ•ฉํ•˜์—ฌ ๊ด€๋ฆฌ๋˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ชจ์Œ ๐Ÿ‘ฉ‍๐Ÿ’ป ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค : ํ•˜๋‚˜ ์ด์ƒ์˜ ํ…Œ์ด๋ธ”๋กœ ์ด๋ฃจ์–ด์ง€๋ฉฐ ์„œ๋กœ ์—ฐ๊ฒฐ๋œ ๋ฐ์ดํ„ฐ ๊ฐ€์ง (SQL๋กœ ์ œ์–ด) โญ ํ…Œ์ด๋ธ” : ์ปฌ๋Ÿผ๊ณผ ๋ ˆ์ฝ”๋“œ๋กœ ๊ตฌ์„ฑ๋œ ํ‘œ : ๋ชจ๋“  ํ…Œ์ด๋ธ”์€ ๊ณ ์œ ์˜ ์ด๋ฆ„์œผ๋กœ ๊ตฌ๋ถ„ // ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ SELECT ๊ฒ€์ƒ‰ํ•  ์นผ๋Ÿผ FROM ํ…Œ์ด๋ธ”; - DISTINCT : ๋šœ๋ ทํ•œ, ๋ถ„๋ช…ํ•œ ๋’ค์— ๋‚˜์˜ค๋Š” ์ปฌ๋Ÿผ์˜ ์ค‘๋ณต ์ œ๊ฑฐํ•จ - WHERE : ๊ฒ€์ƒ‰ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์กฐ๊ฑด์„ ์„ค์ • SELCT ๊ฒ€์ƒ‰ํ•  ์ปฌ๋Ÿผ FROM ํ…Œ์ด๋ธ” WHERE ์กฐ๊ฑด; - LIKE : ํŠน์ • ๋ฌธ์ž๊ฐ€ ํฌํ•จ๋œ ๋ฌธ์ž์—ด์„ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ ์‚ฌ์šฉ (๋Œ€์†Œ๋ฌธ์ž๋ฅผ ์šฐ์„ ..

[CRUD์„ ์ด์šฉํ•œ File upload Web] (9) user ๋ฐ์ดํ„ฐ ์ˆ˜์ •ํ•˜๊ธฐ & ๋™๊ธฐ์™€ ๋น„๋™๊ธฐ

=> CRUD App With Image Upload Using NodeJs, ExpressJs, MongoDB & EJS Templating Engine ๐Ÿฅ• ๋™๊ธฐ(synchronous) : ์ง๋ ฌ์ ์œผ๋กœ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰ : ์š”์ฒญ์„ ๋ณด๋‚ธ ํ›„ ์‘๋‹ต์„ ๋ฐ›์•„์•ผ์ง€๋งŒ ๋‹ค์Œ ๋™์ž‘์ด ์ด๋ฃจ์–ด์ง€๋Š” ๋ฐฉ์‹ (ํƒœ์Šคํฌ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋™์•ˆ ๋‚˜๋จธ์ง€ ํƒœ์Šคํฌ๋Š” ๋Œ€๊ธฐ) ๐Ÿฅ• ๋น„๋™๊ธฐ (asynchronous) : ๋ณ‘๋ ฌ์ ์œผ๋กœ ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰ : ์š”์ฒญ์„ ๋ณด๋‚ธ ํ›„ ์‘๋‹ต์˜ ์ˆ˜๋ฝ ์—ฌ๋ถ€์™€๋Š” ์ƒ๊ด€์—†์ด ๋‹ค์Œ ํƒœ์Šคํฌ๊ฐ€ ๋™์ž‘ํ•˜๋Š” ๋ฐฉ์‹ (a ํƒœ์Šคํฌ๊ฐ€ ์‹คํ–‰๋˜๋Š” ์‹œ๊ฐ„ ๋™์•ˆ b ํƒœ์Šคํฌ ํ•จ) : ๋น„๋™๊ธฐ ์š”์ฒญ์‹œ ์‘๋‹ต ํ›„ ์ฒ˜๋ฆฌํ•  '์ฝœ๋ฐฑ ํ•จ์ˆ˜' ์•Œ๋ ค์คŒ => ํ•ด๋‹น ํƒœ์Šคํฌ๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์„ ๋•Œ, '์ฝœ๋ฐฑ ํ•จ์ˆ˜'๊ฐ€ ํ˜ธ์ถœ๋จ โž• ํ›„์† ์ฒ˜๋ฆฌ ๋ฉ”์†Œ๋“œ 1) Promise then (Promise ๋ฐ˜ํ™˜) ..