우연하게 발견한.. 내용인데요.
libmariadb.dll >> MariaDB를 사용하신다면 이 파일을 구글에서 검색해서 다운받을 수 있습니다.
ZConnection 에
.LibraryLocation := _gf_ExePath + 'libmariadb.dll';
.Protocol := 'mysql-5'; //'MariaDB-5';
mysql-5 다른 조합들은 다 문제가 있구요.
mysql-5 과 저 DLL을 사용했을 경우만 Size가 정상적으로 나옵니다.
// 추가 ㅠ. 제가 잘못 본듯합니다. 디자인 타임과 런타입에 다르게 나오네요 ㅠ.
그냥.
cLOSE;
SQL.Text := 'set NAMES utf8 ';
ExecSQL;
이렇게 하면 자리수 Size가 맞게 나오네요.
kivalan 님이 쓰신 글 :
: 안녕하세요.
: XE5로 테스트 중인데요.
:
: mySQL zeosDBO로 연결 중입니다.
: 그런데 7.1.3-stable 버전이구요.
:
: ControlCodePage 가 cCP_UTF16 로 고정이 되는것 같습니다.
: 그래서 그런지.
:
: ZQuery로 Select 해 보면. VarChar (6) 인 필드에 123456이 들어가 있으면.
:
: ('Field').AsString 으로 읽어 보면. '123' 으로만 읽힙니다.
: Zeos내부 코드를 따라가 보면. FieldSize 를 읽는 부분에서 Char 크기를 AnsiChar로 읽는게 아니라.
: 와이드스트링? 같은게 아닐까 해서요...
:
: 이문제에 대해서 알고 계신 분이 있으신지요?
:
|