반응형
스키마의 조건부/실행 가능한 주석입니다.sql in Spring Boot 응용 프로그램
우리는 JUNIT 테스트에서 Spring boot의 데이터베이스 초기화 기능을 사용하고 있습니다.
저희가.schema.sql
우리 클래스 경로에 파일이 있고 어플리케이션 시작 시 예상대로 실행되고 있습니다.그러나 MySQL 또는 MariaDB에서 실행하기 위해 필요한 다음 양식의 조건부 주석이 포함되어 있기 때문에 스크립트가 실패합니다.
댓글은 다음과 같습니다.
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
실행의 스택 추적에서 우리는 그 클래스가org.springframework.jdbc.datasource.init.ScriptUtils
sql 파일을 별도의 문으로 분할하는 데 사용되고 있습니다.이 과정에서 모든 블록 주석은 제거되고 데이터베이스로 전송되지 않습니다.
전체 파일이 데이터베이스로 전송되어 한 번에 실행되도록 이 동작을 구성할 수 있는 방법이 있습니까?
그 대본을 사용하지 마세요. 분명히 부적절합니다.
대신 실행LOAD DATA INFILE ...
작업을 한 번에 완료할 수 있습니다.
언급URL : https://stackoverflow.com/questions/44017653/conditional-executable-comments-in-schema-sql-in-spring-boot-application
반응형
'programing' 카테고리의 다른 글
큰 요청에 대해 응답 헤더를 업스트림에서 읽는 동안 Nginx 업스트림이 너무 일찍 닫혔습니다. (0) | 2023.09.15 |
---|---|
MySQL: sql_mode 영구 설정 (0) | 2023.09.15 |
엔티티 프레임워크를 사용하여 수동으로 키 입력 (0) | 2023.09.15 |
new Wp_Query() 또는 pre_get_posts()를 사용자 지정 게시물 유형에 대한 모든 게시물을 볼 수 있습니까? (0) | 2023.09.15 |
사용자 지정 이미지 필드와 다른 필드를 동시에 추가 (0) | 2023.09.15 |