Background Image

FORUM

조회 수 14810 추천 수 0 댓글 6
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요. 큐브리드를 사용하여 웹서버(XE)를 운영하고 있습니다.

검색 시 한글검색 부분은 해결했는데 영문검색 시 대소문자를 구분하여 영향이 있습니다.

 

예로 대문자 P로 쓰여진 글을  소문자 p로 검색할 경우 검색 결과가 나타나지 않습니다.

또한 반대로 소문자로 쓰여진 글을 대문자로 검색 시 나타나지 않습니다.

 

초보라 그런데 수정할 구문과 수정위치를 정확하게 알려 주시면 감사하겠습니다.

 

답변 부탁드립니다. 감사합니다.

  • ?
    seongjoon 2012.01.25 08:30

    안녕하세요.

    큐브리드를 사용해 주셔서 감사합니다. 문의하신 내용에 대하여 빠른 시일 내에 확인하여 알려드리도록 노력하겠습니다.

  • ?
    이용미 2012.01.27 23:51

    안녕하세요. 질문하신 내용의 답변입니다.

     

    검색 결과에 차이가 나는 이유는 MySQL은 DB에서 대소문자를 구분하지 않고(Case insensitive), CUBRID는 대소문자를 구분하기 때문입니다. 한글 검색어에 대해서는 문제가 되지 않으나, 영문 검색어에 대해 검색 결과가 차이가 나서 불편하실 것 같은데요. 조사해보니 현재 8.4.0 버전에서는 해결방안이 없는 것 같습니다. 8.4.1 이후 버전에서 최대한 동일한 검색 결과가 나올 수 있도록 XE팀과 논의 중에 있습니다.

     

    굳이 방법을 찾는다면,

    XE 코드를 잘 아시는 분이고, DB 크기가 작아서 성능 문제가 없다면..DB검색 쿼리를 직접 수정하실 수 있겠습니다.

    select col1, col2 from tbl where col1 like a”의 경우 소문자 a만 검색 결과로 출력될 것입니다.

    그러나 이것을

    -       select col1, col2 from tbl where lcase(col1) like lcase(a)    : 소문자로 통일하여 검색(lcase lower로 대체 가능)

    -       select col1, col2 from tbl where ucase(col1) like ucase(a)  : 대문자로 통일하여 검색(ucase upper로 대체 가능)

    로 변경하여 사용하신 다면 원하시는 결과 값이 나올 것 입니다.(함수의 사용으로 인덱스를 못타게 되므로, 첫 번째 sql에 비하여 두, 세 번째 sql은 성능상의 저하가 발생할 수 있습니다.)

     

    Xe 검색 관련해서는 어느 부분을 수정해야 하고, 어떤 sql문을 수정해야 하는지는 저희가 잘 알지는 못하므로 정확한 답변을 드리기가 어렵습니다. 저희가 좀더 조사를 한 후 댓글에 남기도록 하겠습니다.
  • ?
    재권 2012.02.01 03:30

    계속 기다리던 내용이었습니다. 답변 주시니 감사드립니다. 조금 더 조사 후 수정부위를 알려 주셨으면 합니다.

    반드시 향후버전에서는 개선되었으면 합니다.

  • ?
    샤롱스판 2012.02.01 03:52

    XE후속버전에서 CUBRID 사용시 대소문자를 구분하지 않고 검색결과가 나올 수 있도록 XE팀에 요청해둔 상태입니다. XE 후속 버전이 나오면 CUBRID 8.4.1버전으로 DB 업그레이드하시면서 XE도 함께 업그레이드해주세요. 불편하실텐데 좋은 제보 감사드립니다.

    직접 수정할 코드(XE가 생성하는 SQL 검색 쿼리)는 저희가 8.4.1버전과 테스트 후에 알려 드리겠습니다.

  • ?
    seongjoon 2012.02.01 04:35

    다음 부분을 수정하니 대소문자 동시 검색이 되는군요.

    sandbox/classes/db/DB.class.php 파일에서 531번째 라인 정도에(xe버젼에 따라 다를 수 있음) 아래와 같은 문구를 변경하시면 됩니다. 단, 전체적인 테스트를 해보지는 못했으며, 검색 부분에서만 확인을 하였으므로 기존 파일은 문제가 생기면 바로 복구 가능하도록 백업을 해두셔야 됩니다.

    변경전

    case 'like_tail' :

    case 'like_prefix' :

    case 'like' :

    return $name.' like '.$value;

    break;

    변경후

    case 'like_tail' :

    case 'like_prefix' :

    return $name.' like '.$value;

    break;

    case 'like' :

    return "UPPER(".$name.") like "UPPER(".$value.")";

    break;

  • ?
    샤롱스판 2012.02.08 20:18

    대소문자 구분 검색 문제를 해결한 코드가 XE에 반영되었습니다. http://code.google.com/p/xe-core/downloads/list 에서 xe.1.5.1.6.ko.changed 파일을 다운받아 현재 응용을 업그레이드해주세요.

    또한, DB도 841버전으로 업그레이드하셔야 합니다. http://www.cubrid.com/zbxe/266178 첨부파일에 있는 릴리스 노트를 참고하시면 업그레이드 방법이 자세하게 나옵니다. 간단히 말씀드리면, 1.840 DB정지, 2. 840에 있는 *.conf파일 백업 3. 841엔진바이너리 overwrite 4. php driver 841버전으로 교체 5. 2에서 백업한 *.conf파일 overwrite 단, cubrid_broker.conf파일에 있는 CCI_DEFAULT_AUTOCOMMIT=ON으로 변경해주세요. 6. DB재시작입니다.

    php driver 841과 엔진은 ftp://ftp.cubrid.org/CUBRID_Drivers/PHP_Driver/8.4.1/  ftp://ftp.cubrid.org/CUBRID_Engine/8.4.1/ 에서 다운받을 수 있습니다.

    단, 841버전은 릴리스된지 얼마 안된 버전이라서 조만간 패치가 나올 예정입니다. 아예 엔진 패치가 나오는 시점에 작업을 진행하시는 것도 좋겠습니다. 감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4442
» 영문검색 시 대소문자 구분 문제 6 재권 2012.01.25 14810
1146 큐브리드 2008 patch2 깔고 2 겸손한플머 2012.01.24 8945
1145 MSSQL과의 성능에 대한 비교를 알고 싶습니다 1 secret 로닥 2012.01.18 17
1144 checkdb(데이터베이스검사) 관련 질문드립니다... 2 반짝이 2012.01.10 11998
1143 HA구성에서 백업시 보관 로그 제거(lgar) 관련 문의드립니다. 2 반짝이 2012.01.09 24631
1142 CUBRID Migration Toolkit 사용시 에러 관련사항입니다. 3 file 그가가가 2012.01.03 19049
1141 asp.net 윈도우즈 설치 문의 3 shblitz 2011.12.29 14673
1140 HA관련 추가 문제 답변부탁립니다... 3 file 반짝이 2011.12.29 24163
1139 HA로 운영중인 CUBRID 버전업 방법과 INDEX 문제 질문드립니다. 11 secret 반짝이 2011.12.28 61
1138 접속제한 설정 질문드립니다 2 유니콘 2011.12.24 12721
1137 큐브리드 백업 진행시 오류 2 제이씨씨 2011.12.23 17340
1136 jdbc 사용중 테이블 데이터 입력문제 2 Dezert 2011.12.22 20502
1135 업그레이드 후 쿼리 수행시간이 길어졌습니다. 4 secret 노랑배 2011.12.22 12
1134 R1.4 -> R2.2 마이그레이션 중 스키마 로드 에러 2 secret 노랑배 2011.12.20 7
1133 double 표시형식 문의 2 지렸당께 2011.12.18 16275
1132 DLL WS2_32.dll에서 찾을 수 없습니다. 2 karay2k 2011.12.17 28605
1131 호스트 추가 1 karay2k 2011.12.17 17928
1130 cubrid 성능비교 2 secret 깨진질그릇조각인형 2011.12.15 12
1129 autocommit 관련 5 깨진질그릇조각인형 2011.12.15 15589
1128 cubrid 매니저 아이디 잊어 버렸는데.. 2 티제이 2011.12.10 13409
Board Pagination Prev 1 ... 138 139 140 141 142 143 144 145 146 147 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales