Background Image

FORUM

조회 수 1690 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Linux 64bit
CUBRID Ver.
CUBRID 10.1 (10.1.0.7663-1ca0ab8) (64bit release build for Linux) (Jul 12 2017 21:54:48)
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
php


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------


안녕하세요. XpressEngine 3.0 에 큐브리드를 붙여서 홈페이지를 개발하고 있습니다.

https://github.com/xpressengine/laravel-cubrid 드라이버를 이용해 PHP 7에서 구축하고 있는데요.


영문 대소문자 검색할 때 문제가 되어 드라이버에서 like 검색이 들어오는 경우 컬럼에 UPPER로 처리하도록 하고 있습니다.

.. (UPPER(`title`) like '%FACTORY%' or UPPER(`pure_content`) like '%FACTORY%') ...


이렇게 해서 대소문자를 해결했는데요. 이제 한글 검색어가 들어오는 경우 문제가 되고 있습니다.

.. (UPPER(`title`) like '%기업%' or UPPER(`pure_content`) like '%기업%') ..

위와 같이 컬럼에 UPPER를 한 경우 한글 검색이 안되는데요.


이 문제를 해결하기 위한 큐브리드 설정이 있는지.. 혹은 제가 데이터 처리할 때 주의해야할 사항이 있는건지 질문 드립니다.


  • ?
    bikehee 2017.11.16 19:05
    CUBRID사용하는 유저입니다.

    https://www.cubrid.org/manual/ko/8.4.4/sql/function/condition_fn.html?highlight=upper#like
    UTF-8과 같은 멀티바이트 문자셋 환경에서 입력된 데이터에 대해서는 LIKE 검색 결과가 정상적이지 않을 수 있다. 이는 문자셋에 따라 문자열 비교 연산을 수행하는 바이트 단위가 다르기 때문이며, 1바이트 단위로 문자열 비교를 수행하도록 하는 파라미터(single_byte_compare=yes)를 cubrid.conf 파일에 추가한 후 DB를 재가동하면 정상적인 검색 결과를 얻을 수 있다.

    cubrid.conf에 single_byte_compare=yes 설정넣고 재시작하면 검색 잘될것 같습니다~

    그리고 대소문자의 경우엔 upper대신 regexp을 사용해도 될것 같습니다.
    ====
    create table foo (name varchar(20));
    csql> select * from foo;
    name
    ======================
    '가'
    '가나'
    '나가'
    '가나다'
    '가다'
    'a'
    'aA'
    'AB'
    'bb'
    'bB'

    --한글검색
    select * from foo where upper(name) like '%나%'
    name
    ======================
    '가나'
    '나가'
    '가나다'

    --대소문자구분없이
    csql> select * from foo where name regexp '[A]';
    name
    ======================
    'a'
    'aA'
    'AB'

  1. SQLGate for CUBRID 영구 무료 라이선스 제공

  2. No Image 08Nov
    by 권태성
    2017/11/08 by 권태성
    Views 716 

    MyBatis에서 clob 데이터 이상현상 문의

  3. DB복구

  4. DB내보내기에서 스키마 파일 문의드립니다

  5. 날짜시간 함수를 조건 절에서 어떻게 처리하는지 궁금해서요

  6. DB복구 질문드립니다.

  7. CUBRID 10.1 64bit LINUX 다운이 안되네요

  8. Upgrading From CUBRID 2008 R4.1/R4.3/R4.4 To CUBRID 10.1 시 문의사항

  9. 트리거 작성 도중 알 수 없는 오류가 발생했습니다.

  10. 사용하던 view 가 갑자기 사라지는 현상

  11. 큐브리드 설치 후 디비 서버 시작 실패

  12. 큐브리드 10.1.0 PHP driver 확인

  13. CUBRID 10.1 LIST Partition 생성 오류

  14. DB 이전관련 질문 드립니다.

  15. CUBRID Manager 영문버전 제공여부

  16. DB 이전 문제 문의 드립니다.

  17. 연계과정에서 질문드릴게있습니다.

  18. UPPER 를 이용한 like 검색 과 한글 문제

  19. clob에서 varchar(1073741823) 으로 변경된 테이블 조회시 오래걸리는 현상

  20. DB연계과정에서 에러코드 발생되어 문의 드립니다.

  21. 쿼리 조회시 인덱스를 타지 않고 full scan 으로 나오는 경우 질문드립니다.

Board Pagination Prev 1 ... 131 132 133 134 135 136 137 138 139 140 ... 199 Next
/ 199

Contact Cubrid

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