728x90
Maria DB 1366 ERROR
ERROR 1366 (HY000): Incorrect string value: '\xED\x95\x9C\xEA\xB8\x80...' for column 'name' at row 1
Maria DB ERROR 1336(HY000) 에러는 MYSQL DB에서 encoding 과정에서 한글이 들어가면서 생기는 오류이다.
보통 이모티콘이나 한글이 들어가면 생기는 에러라는 포스팅이 많았다.
내가 겪은 ERROR 1366 (HY000): Incorrect string value: '\xED\x95\x9C\... 에러는 encoding error 였다.
기존 MariaDB Database 생성 코드
CREATE TABLE IF NOT EXISTS company_info (
code VARCHAR(20),
company VARCHAR(40),
last_update DATE,
PRIMARY KEY(CODE)
)
일반적으로 CREATE TABLE 을 이용해서 company_info라는 table을 생성시켰는다.
이렇게 TABLE을 생성해서 python에서 pymysql 라이브러리를 이용해서 불러오게 되면
데이터를 Database에 데이터를 넣는 과정에서 한글이 encoding이 되지않으면서 error가 발생하고
Database 에 데이터가 제대로 들어가지 않는다.
한글 encoding error 해결을 위해서는
"DEFAULT CHARSET=utf8;" 구문을 SQL 맨 뒤에 입력해줌으로서 UTF8로 encoding 오류를 바로 잡을 수 있다.
수정 MariaDB Database 생성 코드
CREATE TABLE IF NOT EXISTS company_info (
code VARCHAR(20),
company VARCHAR(40),
last_update DATE,
PRIMARY KEY(CODE)
)DEFAULT CHARSET=utf8;
반응형
댓글