Recent Posts
Recent Comments
HEROJOON 블로그(히로블)
java.sql.SQLException: Incorrect string value: 에러 해결 본문
반응형
1. 오류명
java.sql.SQLException: Incorrect string value:
2. 해결
insert 할 때 위와 같은 오류 발생하면 DB나 테이블, 컬럼의 인코딩 설정을 확인해야 합니다.
DB, Table, Column의 인코딩을 utf8mb4 - default collation으로 맞춰줍니다.
3. DB, Table, Column - 쿼리로 CharacterSet 변경하는 방법
1) DB CharacterSet 변경
# DB CharacterSet 변경
ALTER DATABASE DB명 DEFAULT CHARACTER SET utf8mb4;
ex) DB명이 testdb 일 때
ALTER DATABASE testdb DEFAULT CHARACTER SET utf8mb4;
2) Table CharacterSet 변경
# Table CharacterSet 변경
ALTER TABLE DB명.테이블명 DEFAULT CHARACTER SET utf8mb4;
ex) DB명이 testdb이고 테이블명이 user 일 때
ALTER TABLE testdb.user DEFAULT CHARACTER SET utf8mb4;
3) Column CharacterSet 변경
# Column CharacterSet 변경
ALTER TABLE DB명.테이블명 MODIFY 컬럼명 컬럼속성들 CHARACTER SET utf8mb4 컬럼속성들;
ex) DB명이 testdb이고 테이블명이 user이고 컬럼명이 name 일 때
ex) name컬럼명의 속성이 VARCHAR(45)이고 NULL허용 가능하다고 할 때
ALTER TABLE testdb.user MODIFY name VARCHAR(45) CHARACTER SET utf8mb4 NULL;
4) Table, Column 한번에 CharacterSet 변경
# Table, Column 한번에 CharacterSet 변경
ALTER TABLE DB명.테이블명 CONVERT TO CHARACTER SET utf8mb4;
ex) DB명이 testdb이고 테이블명이 user 일 때
ALTER TABLE testdb.user CONVERT TO CHARACTER SET utf8mb4;
4. DB, Table, Column - Workbench Tool에서 CharacterSet 변경하는 방법
1) DB CharacterSet 변경
Workbench에서 db 오른쪽 클릭 - Alter Schema 선택
Charset/Collation에서 utf8mb4 선택 후 Apply로 저장
2) Table CharacterSet 변경
Workbench에서 table 오른쪽 클릭 - Alter Table 선택
Charset/Collation에서 utf8mb4 선택 후 Apply로 저장
3) Column CharacterSet 변경
컬럼의 Charset/Collation에서 utf8mb4 선택 후 Apply로 저장
반응형
'DB' 카테고리의 다른 글
Mysql 변수 사용하기 (0) | 2023.01.26 |
---|---|
Insert문 실행 후 PK ID 조회하기 (0) | 2023.01.26 |
Mysql Datetime Function 더하기, 빼기 (0) | 2021.02.02 |
Mysql [Error Code: 1175] update safe mode 해제 (0) | 2020.04.21 |
Mysql Database 생성, 캐릭터셋 변경 (0) | 2020.02.04 |
Comments