前提
- MySQL 8
- SpringBoot 2.6.7
課題
data.sqlでデータを入れようとしたら文字化けする。
application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/mysqldb
username: test
password: test
driver-class-name: com.mysql.cj.jdbc.Driver
sql:
init:
mode: always
schema.sql
CREATE TABLE IF NOT EXISTS m_motorcycle (
moto_no int NOT NULL PRIMARY KEY,
moto_name varchar(20)
);
data.sql
INSERT INTO m_motorcycle (moto_no, moto_name) VALUES (1, 'ばいくめい1');
INSERT INTO m_motorcycle (moto_no, moto_name) VALUES (1, 'ばいくめい2');
data.sqlはUTF-8
解決
sql-init-encoding=UTF-8
を設定追記することで解消できた。
application.yml
spring:
datasource:
url: jdbc:mysql://localhost:3306/mysqldb
username: test
password: test
driver-class-name: com.mysql.cj.jdbc.Driver
sql:
init:
mode: always
encoding: UTF-8