본문 바로가기

프론트앤드 수업

[React] Sqlite DB사용, 간단한 웹페이지 만들기_4

728x90

서버 생성....

Express 설치
npm install express
npm install cors // 모든 브라우저가 내 서버에 요청할 수 있게 해줌

테이블 설치

sqlite 데이터베이스
- 개발용으로 많이 사용
- ORM(Object Relational Mapping) : 서버에서 데이터베이스를 손쉽게 다루도록 도와주는 툴
- 데이터베이스 모델링을 쉽게 할 수 있다.
- SQL을 사용하지 않고, CRUD를 할 수 있다.

Sqlite와 Sequelize 사용하기

  1. sqlite와 sequelize 설치하기
    npm install sequelize sqlite3 // 터미널에 바로 사용 ( 서버에 설치)
  2. sequelize 기본환경 설치
    npm install -g sequelize-cli
    npx sequelize init

//
DB Browser for SQLite 설치
Sqlite 데이터베이스를 GUI 환경에서 보여주는 도구
https://sqlitebrowser.org/dl/

DB Browser for SQLite - Standard installer for 64-bit Windows
설치후 c드라이브에 해당폴더를가서 SQLite를 켜서 불러오면된다.

* sqlite 데이터 조회하기
불러오기
const models = require('./models');
여러개 데이터 조회하기
models.Product.findAll()
.then(products=> {
res.send({
products
})
})
하나만 조회하기
models.Product.fineOnd({
where: {
id:1,
}
})

config.json 수정필요

{
  "development": {
    "storage":"./database.sqlite3",
    "dialect": "sqlite"
  },
  "test": {
    "storage":":memory",
    "dialect": "sqlite"
  },
  "production": {
    "storage":"./database.sqlite3",
    "dialect": "sqlite"
  }
}

테이블 생성 파일

//Common.js 구문 내보내기
//module.exprors
//테이블을 모델링하는 파일
module.exports = function (sequelize, DataTypes){
    //컬럼 name, price, imageUrl, seller
    //제약조건 allowNull : 컬럼의 값이 없어도 되는지 여부 (default:true)
    //https://github.com/design-view/lamp-shopping-server
    const product = sequelize.define('Product', {
        name: {
            type: DataTypes.STRING(20),
            allowNull : false
        },
        price: {
            type: DataTypes.INTEGER(10),
            allowNull : false
        },
        imageUrl: {
            type: DataTypes.STRING(500)
        },
        seller: {
            type: DataTypes.STRING(200),
            allowNull : false
        },
        desciption: {
            type: DataTypes.STRING(500),
            allowNull:false
        }
    });
    return product;
}
728x90
댓글