Q&A

  • MySql4.1 과 델7을 Zeos4.1 컴폰 이용해서 연결시...
연결은 아주 잘됩니다...local이든 remote이든요...^^;
문제는 저희쪽 서버 디비가 아닌 기존 사용하고 있는 업체의 원격지 서버 디비 입니당...
연결은 문제 없이 잘 되는데, select * from testTable; 을 날리면 이상 없이 모든 데이터를
추출해오나, Where 조건문에 특정 문자열을 조건값으로 주게 되면 서버측과 클라이언트 측의
character set 이 틀려서(SQL Error: Illegal mix of collations (euckr_korean_ci,IMPLICIT) and
(latin1_swedish_ci,COERCIBLE) for operation '='. 짧은 영어로 대충 본 결과...
두가지 character set를 혼합해서 사용할 수 없다는 내용 같은데용~ --;;;) 결과값을 추출할 수 없다는
에러가 나옵니다...

MySQL Manage 에서도 이 charset을 Default로 놓고 connect 후 Query 문 날리면 동일한
에러구문이 나오고 charset을 euckr 로 고쳐서 해보면 이상없이 원하는 결과가 나옵니다...
제 컴엔 MySQL 4.1이 설치되어 있구용...설치시 charset 을 euckr로 설정했구요...
델파이에서 원격지 디비 연결시 뭘 설정해줘야 위와 같은 에러 구문없이 원하는 결과값을 얻을 수 있는지
한수 부탁드립니다...이곳저곳 다 뒤져봐도 원하는 자료가 없네요...(제가 못찾는건지 모르겠지만요...)
5  COMMENTS
  • Profile
    데빠이 2005.07.18 21:17
    우선 답변해주신 분께 감사하구요...^^
    제가 함 해보니까요~ 잘못하고 있는지는 모르겠으나...^^;

    my.ini 화일에서 default-character-set 과 default-collation을 확인하여 설정을 추가 한 후
    MySQL을 재시작 해도 characterset 설정엔 변함이 없습니다...--;
    다른 분들은 이렇게 하셔서 해결되었는지는 모르겠으나, 전 안되더라구용...쯔읍~

    그래서 쿼리로 해결을 하려고 where 조건문에 있는 부분을 아래와 같이 했죠...
    where 필드명 = _euckr '조건값' COLLATE euckr_korean_ci 이렇게요...
    그랬더니 에러없이 우선 결과는 보여주더라구요 ^^
    그러나, 필드값에 한글이 있는경우 "???" 나옵니다...--;
    위 내용을 select 절에 적용해도 결과는 마찬가지입니다...대략 난감...

    그래서 포기하고 다시 첨 부터...--;
    디비 연결 후 --default-character-set=euckr; 또는 set names euckr; 을 이용하여
    설정을 변경합니다...status를 확인해보면 server, db, client, conn 의 characterset이
    모두 euckr 로 변경되어 있더라구요...^^ 흐흐흐
    이 상태에서 그냥 일반적으로 사용하는 쿼리문 날리면 where 조건문의 값이나, 결과 값 모두
    아무 에러없이 잘 나옵니다...^^

    근데 다시 disconnect 후 connect 하여 status 확인해보면 characterset은 다시 원상복귀입니다...--;;;
    MySQL 실행중에 설정을 변경하면 변경 사항이 영구적으로 적용이 되는것 같지 않더라구요...
    물론 ini 에서 설정을 수정해도 변경이 안되구요...--;
    제가 설치를 잘못한건지는 모르겠으나, 설치시 characterset을 euckr 로 선택하여 설치를 했었거든요.
    이렇게하면 server, db 의 characterset 만 euckr로 설정이되고 client, conn 은 latin1로 자동 설정이 됩니다.
    그래서 connect 할 때마다 characterset 설정을 바꿔줘야 한다라고 결론을 짓게되었네요...^^
    어쨌든 이렇게 해결되서 지난주에 작업 다 끝내놓고 편한한 맘으로 글 올립니다...
  • Profile
    TeamB 2005.07.15 03:56
    MySQL 4.x (혹은 4.1) 이후부터는 Character set 말고 Collation 라는게 추가 되었습니다.

    아직 4.x이후 버전을 잘 살펴보지 않아서 모르겟지만, 아마도 Collation 이 달라서 그런거 같은데, Collation도 똑같이 해보시길 바래요.

    자세한것은 메널을 참고 하세요

    http://dev.mysql.com/doc/mysql/en/charset-defaults.html

    덧말; 그리고 Zeos 버전이....6.x대 로 업글 하셔서 사용하시는것을 권해드립니다. (될수 있으면 6.0 이상)
    버그및 추가기능도 그렇지만, 이하 버전에서는 MySQL 4.x 이상을 제대로 지원하지 않을수 있습니다.


  • Profile
    데빠이 2005.07.15 04:17
    적어주신 url 은 이미 한번 봤던곳인데 제가 못찾고 지나쳤나보네요...
    워낙 죄다 영어라~ 흐흐흐 다시 한번 찾아봐야겠어요...^^
    글구 제가 잘못 적었네요...Zeos 버전은 6.5.1-alpha 사용하고 있구요~ ^^
    6.1을 설치했더니 MySQL 4.0은 되는데 4.1이 안되더라구용...
    그래서 MySQL 4.1 지원된다는 소리를 적는다는게...헤헤

    근데 제가 이번에 MySQL을 첨 만져보고 있다는게 문제인데 말입니다...
    그 Collation 설정을 어디서 해야하죠? ^^;;;

  • Profile
    TeamB 2005.07.15 04:35

    Character set 설정하는것과 동일 합니다.

    default-collation=euckr_korean_ci

    이렇게 my.ini 에 추가하신담에 MySQL서버를 재시작 하시면 되겟지요.

    http://dev.mysql.com/doc/mysql/en/charset-server.html

    메널이 주로 리눅스류 운영체제에서 데몬을 띄울때 파라미터를 주는 방식으로 설명되어 있지만 윈도 플랫폼에서는 my.ini 에서 옵션을 설정하고 재시작 하시면 됩니다.

    아무튼 메널을 찬찬히 들여다 보시면 다 나옵니다. 저도 영어 모릅니다. 단어 몇개 아는거 빼고는 ㅠㅠ

    데이터베이스,테이블,컬럼 별로 따로 설정도 할수 있고, Select 를 날릴때 도 Collation을 적용할수 있나 보네요 뭐 개별적으로 설정하는부분은 해당 섹션의 메널을 참고하시면 되고요.

    http://www.powerdb.net

    위 사이트에서 MySQL 란을 들락거려 보시길 바랍니다. 아직까지는 국내에선 최대의 MySQL사용자층이 들락거리고 있으니 MySQL에 대한것은 저 사이트에서 해결하시는게 좋을듯 하네요

    그럼...

  • Profile
    데빠이 2005.07.15 04:51
    • 심재용
      2005.07.20 19:51
      MemStream.position := 0;  <= 이 문장을 추가해 보세요. MemStream.ReadBuffer(...);
    • 하얀까마귀
      2005.07.20 02:12
      안녕하세요 하얀까마귀 입니다. 포인트 부분을 잘못쓰신것으로 보이네요.. Pointer형은 4byte 입니다...
    • 대박
    • 2005.07.19 22:24
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 서해근
    • 2005.07.19 22:10
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 권태훈
      2005.07.19 23:10
      챠트의 엑수축의 범위를 지정하면 됩니다.(x에 대한 min,max) 데이타가 많으면 꽤 느립니다. 엑수축 ...
    • 서해근
      2005.07.19 23:38
      정말 감사합니다 부자되세요 ^^
    • 최석종
    • 2005.07.19 04:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 주웰
      2005.07.19 22:10
      질문이 참 난해(!?) 하군요... 레포트를 그런식으로 뽑고 싶으신건지.. 아니면 어플리케이션에서 셀에 입...
    • 이강석
    • 2005.07.19 02:58
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 타락천사
      2005.07.22 19:29
      안녕하세요. 타락임다.. MIDAS 에는 서버에서 데이터셋의 일부만 가져오는 기능이 있어요.. 가령 만...
    • 하얀까마귀
      2005.07.19 09:15
      안녕하세요 하얀까마귀 입니다. 아무래도 데이타 건수에 관련된 거라면 두가지 정도 생각이 드네요. ...
    • KKAW
    • 2005.07.19 01:14
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김종화
      2005.07.19 01:44
      MessageDlg('등록되지 않은 회원입니다. 등록하시겠습니까?', mtInformation, [mbYesNoCancel], ...
    • KKAW
      2005.07.20 00:53
      [mbYes, mbNo] 이렇게 하니까 에러 안뜨는 군요... 그런데 Yes를 선택할 경우랑 No를 선택할 경우 ...
    • 김종화
      2005.07.20 01:59
      아래와 같이 하시면 됩니다.. ^^;;     if MessageDlg('등록되지 않은 회원입니...
    • 강철
    • 2005.07.16 23:00
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 심재용
      2005.07.18 04:51
      파라메터의 종류가 다르기 때문입니다. IEXPLORE.EXE <파일명> 이러한 규칙에 의해 ShellExecu...
    • 유효근
    • 2005.07.16 13:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유효근
      2005.07.16 13:23
      자문자답을 하네요.. ItemIndex 라는게 있군요..
    • 이승근
    • 2005.07.16 12:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오병주
      2005.07.19 18:16
      안녕하세요... 우선 그래프를 프로그램으로 구현하실려면 일단 TChart의 기본 개념이 필요할 것 같군요....
    • 이병협
    • 2005.07.16 04:05
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이병협
      2005.07.22 22:36
      <!--CodeS-->, Procedure TfrmAssetGather.udpDBCompact; var   ole:variant;  &...
    • kivalan
    • 2005.07.16 00:43
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2005.07.16 01:02
      안녕하세요. 최용일입니다. 날조된 MAC | IP 의 패켓을 보내는 방법이 가능합니다. 받는게 문제지... ...
    • kivalan
      2005.07.16 05:39
      보낸다 해도 받는게 젤 어렵겠네요. 더미허브 안에서 같이 있다면.. 그쪽으로 가는 패킷을 잡아서 통신...
    • 이복만
    • 2005.07.15 05:27
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 황준동
      2005.07.15 22:53
      안녕하세요.. 도움이 되실지 모르겠지만 제가 생각하기에는 호환성을 지원하지 않는다는 에러 메시지...
    • 이복만
      2005.07.18 19:11
      말씀대로 기본적인 설정을 확인하던 중에 다른 부분에서 찾았습니다. ^^; 사소한 부분이었지만 제대로 확...
    • nilriri™
      2005.07.15 07:16
                try      &nb...
    • 이복만
      2005.07.15 21:19
      좋은 의견 감사드립니다. 먼저 저의 환경에 대한 설명이 부족했던것 같습니다. OS : 윈XP DB : Oracle9i...
    • 배정은
    • 2005.07.15 03:49
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 데빠이
      2005.07.15 04:56
      팁/테크란에 보시면 "좋은 나무님"이 올려놓으신 "사용자가 DBGrid의 Column순서,폭을 변경시 그 값을 저장...
    • 배정은
      2005.07.16 21:34
      감사합니다.
    • TeamB
      2005.07.15 04:43
      dpk 는 패키지 파일이라고 하며, 패키지 파일과 함께 배포되지 않을수도 있습니다. 패키지파일을 새로...
    • 데빠이
    • 2005.07.15 02:57
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 데빠이
      2005.07.18 21:17
      우선 답변해주신 분께 감사하구요...^^ 제가 함 해보니까요~ 잘못하고 있는지는 모르겠으나...^^; my.i...
    • TeamB
      2005.07.15 03:56
      MySQL 4.x (혹은 4.1) 이후부터는 Character set 말고 Collation 라는게 추가 되었습니다. 아직 4.x이후...
    • 데빠이
      2005.07.15 04:17
      적어주신 url 은 이미 한번 봤던곳인데 제가 못찾고 지나쳤나보네요... 워낙 죄다 영어라~ 흐흐흐 다시 한...
    • TeamB
      2005.07.15 04:35
      Character set 설정하는것과 동일 합니다. default-collation=euckr_korean_ci 이렇게 my.ini 에 ...
    • 데빠이
      2005.07.15 04:51
    • 유효근
      2005.07.14 23:49
      안녕하세요.. 제가 알기로는 상업적 용도로 쓰면 안되는걸로 알고 있습니다. 고로 기업에서는 별도로...