inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Trong thực tế! Tìm hiểu về TDD thông qua phát triển API đặt hàng sản phẩm Spring Boot

Áp dụng JPA

TRUNCATE TABLE 시 AUTO_INCREMENT 컬럼 1로 초기화

3498

pgrrr119

2 câu hỏi đã được viết

2

MySQL이나 H2 에서 TRUNCATE TABLE 시 AUTO_INCREMENT 컬럼값도 1로 초기화되는 걸로 알고 있습니다. 그런데 강의에서는 TRUNCATE 후 AUTO_INCREMENT 컬럼인 ID 를 1부터 다시 시작하게 하는 쿼리를 추가하셔서 어떤게 맞는건지 헷갈립니다

좋은 강의 감사합니다

tdd spring-boot pojo 소프트웨어-테스트 api

Câu trả lời 1

2

ejoongseok

안녕하세요 pgrrr119 님!

말씀해주신대로 MySQL에서 TRUNCATE TABLE을 할 경우 AUTO_INCREMENT 컬럼 값이 초기값으로 재설정되어 AUTO_INCREMENT를 1으로 다시 변경하는 쿼리를 실행할 필요가 없습니다.
https://dev.mysql.com/doc/refman/8.0/en/truncate-table.html

H2는 TRUNCATE TABLE을 실행하더라도 IDENTITY가 기본값으로 재설정되지 않습니다!

https://www.h2database.com/html/commands.html#truncate_table

IDENTITY를 초기화 하기 위해서는 영상에서처럼

ALTER TABLE 'TABLE_NAME' ALTER COLUMN COLUMN_NAME RESTART WITH 1;

또는

TRUNCATE TABLE 'TABLE_NAME' RESTART IDENTITY;

와 같이 TRUNCATE TABLE 명령어 뒤에 RESTART IDENTITY를 추가해주시면 됩니다!

실제로 ID를 1으로 재설정하는 쿼리를 주석처리하고 전체 테스트를 실행하면 테스트 격리가 안되서

테스트가 실패하는것을 확인하실 수 있습니다!

0

pgrrr119

친절한 답변 감사드립니다!!

공식 문서까지 찾아주시다니.. 감동입니다..

제가 잘못 알고 있었군요

역시 GPT 보단 공식 문서를 봐야겠네요

다시 한번 감사드립니다

 

POJO에서 Spring Test로 넘어갈 때 누락(해결됨)

0

33

1

DatabaseCleanup 코드입니당 필요한 분들 쓰세요

0

125

1

이 방법이 TDD가 맞나요?

0

1109

2

POJO로 개발했는데 비즈니스 로직을 로깅해야 할 경우, 어떻게 해야 할까요?

0

337

1

generate -> add Dependency 이 메뉴가 안보이던데, 어떻게 보이게할까요?

0

355

1

실무 Asserta 사용여부가 궁금합니다.

0

455

1

테스트 코드 내의 지역변수를 final로 선언하는 이유가 궁금합니다.

0

530

1

통합테스트와 단위 테스트

0

964

1

의존성 및 설계? 부분 질문드립니다.

0

400

1

테스트 더블

0

394

1

리뷰반영 강의에서 shortcut ctrl + esc 는 어떻게 설정하나요?

0

483

1

POJO

0

597

1

POJO 상품 등록 기능 구현하기 강의 질문

1

543

1

steps 클래스를 사용하는 이유

0

340

1

랜덤 포트를 사용하는 이유

0

1104

1

상품등록 API 개발, JPA로 변환하기 에서

0

875

2

패키지 구조에 대해서 궁금합니다!

0

645

1

BeforeEach 를 하위 클래스에서 다시 사용하는것에 대해서 질문 드립니다.

1

563

1

ProductService의 updateProduct 로직 질문입니다.

0

556

2

POJO로 개발 후 스프링으로 전환, 이후 JPA 전환하는 이유

4

1283

1

TestRestTemplate 대신에 RestAssured를 사용하는 이유가 있을까요?

0

1190

1

API 테스트로 전환하기

0

1019

1

코드 스타일에 대해서 질문드립니다.

2

1138

1

혹시 강의 중에 나오는 플러그인 좀 알 수 있을까요

0

1221

1