최근 대부분의 플랫폼에서 유니코드를 지원하는 관계로 자연스레 한글 사용이 늘고 있는데, DBMS 의 테이블명이나 칼럼명도 한글로 사용하는 경우가 있다.
MySQL 5.1 에서 기본 문자열을 utf8 로 정의한 후 이를 확인한다.
SHOW VARIABLES LIKE 'char%';
이후 델파이에서 TSQLConnection 설정 후, TSQLQuery 를 실행하거나 TSQLTable 을 사용할 경우 Syntax 오류 또는 ???? 로 테이블명이 나타날 것이다.(아참, libmysql.dll 은 32비트 버전을 구하여 시스템 폴더에 넣어야한다. 64비트 윈도우즈에서도 마찬가지이니 주의할 것.)
해결 방법은 간단하다. TSQLConnection 의 Params 에서 ServerCharSet 을 지정해주면 된다. 일명 알고나면 한 줄, 모르면 개고생인 팁이 되겠다.
반응형
'프로그래밍 > PC' 카테고리의 다른 글
ISAPI 기반 어플리케이션 서버의 데이터베이스 커넥션 처리 (0) | 2012.07.20 |
---|---|
Delphi XE2 에서 DataSnap REST Application Client (0) | 2012.07.13 |
Delphi XE2 에서 DataSnap REST Application Cross Domain 처리 (0) | 2012.06.20 |
Delphi XE2, dbExpress Oracle 10g 연동 (1) | 2012.05.30 |
Interface 요약 #7 (0) | 2012.04.19 |
댓글