본문 바로가기

Coding/내일배움캠프

[내일배움캠프] 최종 프로젝트 Day 24 | Node.js 4기 | Day 105 | 24.04.18.(목)

 

multer으로 수정

 

 

[Nest] 11343  - 2024. 04. 18. 오후 4:04:39   ERROR [VisionService] detectLabels 오류: Mission not found

[Nest] 11343  - 2024. 04. 18. 오후 4:04:39   ERROR [ExceptionsHandler] Label Detection 실패: Mission not found

Error: Label Detection 실패: Mission not found

    at VisionService.certificateImageCategory (/Users/_woo_s.j/Desktop/workspace/earth-marvel/src/vision/vision.service.ts:97:13)

    at processTicksAndRejections (node:internal/process/task_queues:95:5)

    at VisionController.certificateImageCategory (/Users/_woo_s.j/Desktop/workspace/earth-marvel/src/vision/vision.controller.ts:68:31)

 

드디어 .. !

 

 

query failed: INSERT INTO `mission`(`mission_id`, `creator_id`, `category`, `title`, `description`, `start_date`, `end_date`, `number_people`, `thumbnail_url`, `type`, `auth_sum`) VALUES (DEFAULT, ?, DEFAULT, ?, ?, ?, ?, ?, DEFAULT, ?, DEFAULT) -- PARAMETERS: [2,"title","description","2024-03-28T15:00:00.000Z","2024-04-15T15:00:00.000Z","100","challenge"]
error: Error: Duplicate entry '2' for key 'mission.IDX_70923e9fbc5a485c908dfd58b6'
query: ROLLBACK
[Nest] 14330  - 2024. 04. 18. 오후 5:31:42   ERROR [ExceptionsHandler] Duplicate entry '2' for key 'mission.IDX_70923e9fbc5a485c908dfd58b6'
QueryFailedError: Duplicate entry '2' for key 'mission.IDX_70923e9fbc5a485c908dfd58b6'
    at Query.onResult (/Users/_woo_s.j/Desktop/workspace/earth-marvel/src/driver/mysql/MysqlQueryRunner.ts:246:33)
    at Query.execute (/Users/_woo_s.j/Desktop/workspace/earth-marvel/node_modules/mysql2/lib/commands/command.js:36:14)
    at PoolConnection.handlePacket (/Users/_woo_s.j/Desktop/workspace/earth-marvel/node_modules/mysql2/lib/connection.js:481:34)
    at PacketParser.onPacket (/Users/_woo_s.j/Desktop/workspace/earth-marvel/node_modules/mysql2/lib/connection.js:97:12)
    at PacketParser.executeStart (/Users/_woo_s.j/Desktop/workspace/earth-marvel/node_modules/mysql2/lib/packet_parser.js:75:16)
    at Socket.<anonymous> (/Users/_woo_s.j/Desktop/workspace/earth-marvel/node_modules/mysql2/lib/connection.js:104:25)
    at Socket.emit (node:events:519:28)
    at addChunk (node:internal/streams/readable:559:12)
    at readableAddChunkPushByteMode (node:internal/streams/readable:510:3)
    at Socket.Readable.push (node:internal/streams/readable:390:5)

 

오류 메시지를 기반으로, 문제의 원인과 해결 방법을 자세히 설명하겠습니다.

 

오류 원인

 

오류 메시지 "Duplicate entry '2' for key 'mission.IDX_70923e9fbc5a485c908dfd58b6'"는 mission

 

테이블에 데이터를 삽입하려고 할 때, 이미 존재하는 데이터 때문에 중복 키 제약 조건을 위반했다는 것을 나타냅니다. 구체적으로, '2'라는 값이 IDX_70923e9fbc5a485c908dfd58b6 인덱스(또는 유니크 키)에 의해 중복되었다고 합니다.

 

이 인덱스는 creator_id 필드 또는 다른 필드에 설정된 것일 수 있으며, 해당 필드에 대해 유니크 제약 조건이 설정되어 있음을 의미합니다. 즉, 같은 creator_id를 가진 레코드가 이미 mission 테이블에 존재하고, 새로 삽입하려는 레코드도 동일한 creator_id 값을 가지려고 하기 때문에 이 오류가 발생한 것입니다.

 

해결 방법

 

  1. 인덱스 확인하기: 먼저 데이터베이스 관리 도구나 쿼리를 사용하여 IDX_70923e9fbc5a485c908dfd58b6 인덱스가 어떤 필드에 설정되어 있는지 확인합니다. 이를 통해 어떤 필드 값이 중복되어 있는지 정확히 파악할 수 있습니다.
  2. 데이터 확인하기: 문제가 발생한 creator_id (또는 다른 필드)에 대해 이미 mission 테이블에 어떤 데이터가 있는지 확인합니다. 이는 해당 필드에 어떤 값들이 이미 존재하는지 이해하는 데 도움이 됩니다.
  3. 로직 수정하기:
  4. 테스트 및 검증하기: 수정 후, 같은 상황이 재현되지 않는지 충분히 테스트하여 변경 사항이 문제를 해결했는지 검증합니다.

 

요약

 

해당 오류는 데이터베이스의 mission 테이블에 유니크 인덱스(또는 ) 제약 조건을 위반하여 발생한 것입니다. 해결을 위해서는 중복되는 필드 값을 확인하고, 애플리케이션 로직이나 데이터베이스 스키마를 적절히 수정해야 합니다.

 

 

나름 되고 있는

 

 

드디어 연결!!!

 

계속 됐는진 모르겠지만 껐다 키니까 되더라 .. 

 

다른 이메일로 테스트 ~~