์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
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 |
- ํ๋ก๊ทธ๋๋ฐ
- ๋ฆฌ์กํธ
- Java
- ์นํผ๋ธ๋ฆฌ์ฑ
- ์๋ฐ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- Python
- ๊น๋ฏธ๊ฒฝ์๋งํ์์
- ์ค๋ธ์
- ์ค๋ผํด
- ์ฝ๋ฉ
- ๋ฐ์ํ
- K๋ฐฐํฐ๋ฆฌ
- K๋ฐฐํฐ๋ฆฌ๋ ๋ณผ๋ฃจ์
- database
- css
- ํ์ด์ฌ
- ์ปดํจํฐ๊ณผํ
- ์ํ
- ์๋ฐ์คํฌ๋ฆฝํธ
- ์ฑ
- ๋ง์ผ๋ด๊ฐ์ธ์์๋ค์์ฐ๋ค๋ฉด
- ComputerScience
- html
- ๋ผํ๋ผ์ค์๋ง๋
- ๋ ์
- ๊ฐ๋ฐ
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- ์นํ์ด์ง๋ง๋ค๊ธฐ
- JavaScript
- Today
- Total
JiYoung Dev ๐ฅ
[Node.js] sequelize (2023.07.10) ๋ณธ๋ฌธ
sequelize
Node.js์ ๋ํ์ ์ธ ORM
Sequelize๋ mysql, postgreSQL, mariaDB ๋ฑ ๋ง์ RDBMS๋ฅผ ์ง์ํ๊ณ promises ๊ธฐ๋ฐ์ผ๋ก ๊ตฌํ๋์๊ธฐ ๋๋ฌธ์ ๋น๋๊ธฐ ๋ก์ง์ ํธ๋ฆฌํ๊ฒ ์์ฑํ ์ ์์
ORM(Object-Relational Mapping)
๊ฐ์ฒด์งํฅ ํจ๋ฌ๋ค์์ ํ์ฉํ์ฌ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค(RDB)์ ๋ฐ์ดํฐ๋ฅผ ์กฐ์ํ๊ฒ ํ๋ ๊ธฐ์
์ฌ์ฉ๋ฒ
1. sequelize ์ค์น
npm install sequelize
2. sequelize-cli ์ค์น
- ํด๋ ๊ตฌ์กฐ๋ฅผ ๋ง๋๋ ๋ช ๋ น๋ฌธ์ ์ฌ์ฉํ๊ธฐ ์ํด ์ค์น
npm install sequelize-cli
3. mysql2 ์ค์น
npm install mysql2
4. ์ด๊ธฐํ
npx sequelize init
ํด๋ ๊ตฌ์กฐ
1. config
- DB์ฐ๊ฒฐ์ ํ์ํ ์ ๋ณด๋ฅผ ํฌํจํ๊ณ ์์
- dev(๊ฐ๋ฐ์ฉ๋), test(ํ ์คํธ์ฉ๋), product(๋ฐฐํฌ์ฉ๋)๋ก ๊ตฌ๋ถ
2. migration
- DB๋ฅผ ๋ณ๊ฒฝํ ๊ธฐ๋ก์ ๋ํ ํ์ผ์ ๋ณด๊ด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ณํํ๋ ๊ณผ์ ๋ค์ ์ถ์ ํด๋๊ฐ๋ ์ ๋ณด
- ์ด์ ์ค์ ์ผ๋ก ๋๋๋ฆด ๋ ์ฌ์ฉ
3. models
- ํ ์ด๋ธ์ ๋ํ ๊ฐ์ฒด ์ ์
4. seeders
- ํ ์ด๋ธ์ ์๋์ผ๋ก ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ ์ถ์ ๋ ์ฌ์ฉ
์์ฑ๋ ํ์ผ ๋ด๋ถ์ ์ฝ๋ ์์ฑํ์ฌ seed ์ถ๊ฐํ ์ ์์
์ฝ๋ ์์ฑ ํ ์คํํ๋ฉด ํ ์ด๋ธ์ ๊ธฐ๋ณธ๊ฐ ์ ์ฅ
๊ธฐํ
json ๋ฐ์ดํฐ ๋ฐ์ ๋ ์ฌ์ฉ
$ npm install body-parser
์๋ธ์ฟผ๋ฆฌ๋ฅผ ์ฌ์ฉํ ๋ ํน์ ์ฐ๊ด๊ด๊ณ๊ฐ ๋ณต์กํ ๋๋ ORM์ผ๋ก๋ง์ ๊ตฌํํ๊ธฐ ์ด๋ ค์