mysql 을 db로 하고 jdbc로 접속하여 insert 를 한다고 가정하자.


이런 경우는 토비의 스프링의 예제로 나오는데 ... 그대로 생성했다간

Exception in thread "main" java.sql.SQLException: Incorrect string value: '\xEB\xB0\xB1\xEA\xB8\xB0...' for column 'name' at row 1
이런 에러가 나와버린다. 딱봐도... 한글캐릭터 문제인데, 토비의 예제에서 접속캐릭터셋을 UTF8 로 해놓은걸 볼 수 있다.

해서 찾아보니... 생성시에 해당 컬럼에 대해서 문제셋지정이 가능했다. 아래와같이 처리해서 테스트 결과는 성공.

create table users (
id varchar(10) primary key,
name varchar(20) character set utf8 not null,
password varchar(10) not null
)


이게 아니면 varchar 대신 다른 타입을 써도된다. 다만... 그렇게 큰 타입을 지정할 필요가 있을지 의문된다면 위와같이 처리해도 된다. 


+ Recent posts