Nodejs_29_시퀄라이즈 실습

‍박태우·2023년 11월 11일
0

1. 시퀄라이즈 실습하기

  • 테이블 삭제시에는 1대다 관계에서 다 를 먼저 삭제해야함 (외래키 관련)

(위처럼 명령어를 입력하면 데이터베이스를 만들 수 있다.)

(또한 db 는 위 의 sync 되는 순간 생성이 된다. npm start를 통해 연결 가능)

(npm start 이후 create 관련 명령어가 생성된다.


(예제 코드대로 실행한 프로그램)

(입력시 위와 같은 결과가 나온다.)

(위 포스트 요청이 왔을때 실행되는 매커니즘이다. User를 promise로 생성한다. 이름, 나이 결혼여부를 생성함.)

(get 요청의 경우 db의 모든 유저 가져와서 res.json으로 보내주는것

문자열 ==res.send
파일 == res.sendFile
템플릿 엔진 렌더링 == res.render
그외 api 에서 json 보낼때 == res.json)


(특정 아이디를 가진 사람의 댓글을 가져오는 코드
위 경우 댓글을 통해서 댓글의 작성차를 찾는다.
(또는 작성자를 통해 댓글을 찾을 수 도 있는것이다.))

(위 두 경우는 user 표에서 아이디 부분을 누르면 해당하는 아이디가 적은 댓글이 나타난다. 이때 get 요청을 프런트에서 보내서 백이 응답하여 보여주는 것, 위의 :id/comments 부분 코드이다.)


  • 수정 하기

(수정 버튼을 눌러 위와같이 수정도 가능 이때는

patch 메서드 요청이 발생한다.

(이 코드가 해당 댓글 아이디를 가진 코멘트를 수정하는 코드이다.
/comment가 위에 있기 때문에 생략되어 있다.)

  • 삭제 하기

(역시 delete 요청도 patch와 비슷한 형태로 요청을 보내며 코드는 아래와 같다.)

(위의 patch 코드와 이어져 있는 코드이며 역시 댓글의 id를 통해 destroy를 한다.

주소 설정을 올바르게 하는것이 나중에 알아보기도 편하다.)

  • 댓글 등록

(등록 시에는 위의 post 요청이 서버로 들어온다. id, comment 정보를 가져와서 쓴다.)

=> 댓글과 사용자를 따로 등록하는 경우

(위 처럼 유저 따로 커멘트 따로 받아서 사용할 수도 있다.

User 를 찾고 주인없는 댓글을 달고 댓글과 user를 다시 연결해주는 형식)

  • 로그로 해킹당하는 경우가 있기 때문에 터미널에서 sql 일부분은 보안을 위해 ?로 시퀄라이즈가 바꿔준다.
profile
잘 부탁드립니다.

0개의 댓글