| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 | 31 |
- GROUPING
- dom
- coalesce
- Oracle
- JavaScript
- execute immediate
- SQL
- dense rank
- 정규식 연산
- 위코드
- 기업 협업
- 코드 스니펫
- sql 저장 모듈
- 정보처리기사
- 비절차적 데이터 조작어
- list multiplication
- simple case expression
- searched case expression
- 문법 차이
- show graph characteristics
- window 함수
- ROLLUP
- MYSQL
- SQLD
- python
- git
- html
- Node.js
- 뷰
- 자료구조
- Today
- Total
목록Error Handling/node.js (3)
프로그래밍 숲
상황 posts/unhide/:postId와 posts/hide/:postId의 엔드포인트를 patch로 입력하여 response값을 받아오려고 하는데, patch - post/:postId의 response message가 나온다. router 순서도 확인했고, post/:postId endpoint를 주석처리 해봐도 마찬가지. 하드코딩하는 sql 쿼리문도 문제 없음 원인 router.patch('/hide/:postId', postController.updatePost);에서 다음 경로를 지정해 주는 path가 updatePost로 되어있었기 때문이다.
Error Message QueryFailedError: Cannot add or update a child row: a foreign key constraint fails (`pumpkin`.`posts`, CONSTRAINT `posts_category_id_fk` FOREIGN KEY (`category_id`) REFERENCES `categories` (`id`)) 상황 createPost 통신을 시도했는데 다음과 같은 에러메시지 출력. 우선 dao단의 쿼리문 문제일 것이라고 추측. mysql에 hard coding으로 insert Into 하니 잘 들어감. raw 쿼리문에는 문제 없음 해결 service단과 controller단의 인자 값의 순서가 dao단의 인자 값의 순서와 달라서 생겼던 문제.
나오는 출력 값 { "data": { "fieldCount": 0, "affectedRows": 1, "insertId": 5, "info": "", "serverStatus": 2, "warningStatus": 0 } } ResultSetHeader { fieldCount: 0, affectedRows: 1, insertId: 13, info: '', serverStatus: 2, warningStatus: 0 } console에 data를 찍어보니 ResultSetHeader에 담겨서 온다. dao문의 쿼리문이 INSERT INTO라서 출력 결괏값이 저렇게 나오는 듯하다. 해결 controller의 json을 {data}에서 {message: ‘Post Created’} 로 변경하였더니 messag..