[Database] MYSQL - VARCHAR vs TEXT
·
개발/Database
게시글 작성시 DB저장시 내용부분의 타입은 뭘로 쓸지 VARCHAR로 하면 길이는 얼마나 줘야할지 고민했다. 이참에 VARCHAR와 TEXT의 차이를 알아보고 앞으로 어떤 타입을 적용시키는게 좋을까를 정리하려고 한다. 모든 테이블은 InnoDB를 기반으로 한다. 1. VARCHAR varchar은 variable character 즉 가변적인 캐릭터이다. char 타입과 비교해보면 char 타입은 고정 크기이고 varchar은 가변 크기인 것이다. varchar를 설정할때 항상 괄호 안에 있는 숫자가 글자 수인지 바이트 수 인지 헷갈렸다. -> 글자 수라고 한다. 즉 varchar(255) 라고 설정하면 255자 이하의 문자열을 사용할 수 있다. varchar은 최대 65535개의 문자열을 저장할 수 있..
[Node.js] mysql FOREIGN KEY
·
개발/node.js
1. mysql FOREIGN KEY 데이터베이스 테이블의 컬럼값끼리 관계를 정할수 있다. const dot = require("dotenv").config(); const config = { dev: { user: "root", password: process.env.DB_PASSWORD, database: "text9", multipleStatements: true, } } module.exports = config; 테이블에 컬럼값 넣어서 만들기 const sql = "CREATE TABLE users (id INT AUTO_INCREMENT, username varchar(255), PRIMARY KEY (id));"; const sql2 = "CREATE TABLE items (id INT AU..
[Node.js] access token, refresh token 을 활용하여 로그인 유지시키기
·
개발/node.js
1. access token, refresh token 을 활용하여 로그인 유지시키기 // express, dotenv, fs, jsonwebtoken , express-session, mysql2 // 개발용으로 nodemon // 모듈 설치 //fs 모듈 가져오기 const fs = require("fs"); //express 모듈 가져오기 const express = require("express"); // .env파일을 사용하기 위해 가져오면서 설정 const dot = require("dotenv").config(); // jsonwebtoken 모듈 가져오기 const jwt = require("jsonwebtoken"); //express-session 모듈 가져오기 const session..
[Node.js] 삭제, 수정버튼 만들기
·
개발/node.js
1. delete 버튼 만들기 url 요청에서 파라미터를 뽑을수 있는데 req요청의 값을 이용할 수 있다. /:id 이런식으로 작성 params : 매개변수 http://localhost:4000/delete/1 이런 방식이면 /delete/:id 이 주소에서 id가 params 키값이고 실제로 요청한 url의 /:id 이자리에 있는 값이 value이다. {params:{id:1}} 그래서 이렇게 값을 받을수 있다. /delete/:id/:pw/:con 이런식으로 여러개의 값을 받을수도 있다. AUTO_INCREMENT 는 컬럼을 추가할때마다 값이 자동으로 증가한다. UPDATE와 ALTER 차이점 UPDATE의 데이터 명령어는 데이터 베이스의 관계에 저장된 데이터를 수정하는것 ALTER는 데이터베이스의..
[node.js] express, MySQL
·
개발/node.js
1. express Node.js를 사용해서 쉽게 서버 구성을 할 수 있게 만들어주는 클래스와 라이브러리 집합이다. express 설치 명령어 npm i express 설치 후 express 모듈 가져오기 const express = require("express"); 2. body-parser body-parser는 요청과 응답사이에서 공통적인 기능을 해주는 미들웨어다. 데이터를 body라는 객체 안에 담아서 요청 응답을 받을수 있게 해준다고 보면 된다. 설치 명령어 npm i body-parser 설치후 모듈 가져오기 const bodyParser = require("body-parser"); 3. ejs ejs는 node.js와 express에서 많이 사용하고 있는 템플릿 엔진이다. ejs는 우리가..
[node.js] formatting, linting
·
개발/node.js
1. npm 설치 관련 [1] Formatting node 프로젝트를 여러멍이나 개인이 작업하다보면 예상하지 못한 오류가 생겼을때 찾아내기가 힘들다. formatting은 런타임 코드를 이용자에게 전달하기 전에 문제를 잡아준다. ex) Prettier formatting을 해주는 Prettier 패키지 설치 명령어 npm install --save-dev prettier --save-dev : 우리가 프로젝트를 개발할때만 사용할 패키지 npm패키지를 설치하면 package.json에 내용이 추가되고 package.json의 중요한 역할중에 하나는 메타데이터를 표현하는것도 있다. 현재 프로젝트가 사용하는 의존성 내용을 나열하는 것에도 목적이 있다. node_modules 폴더는 git에 따로 올리지 않고 ..