Background Image

FORUM

조회 수 1714 추천 수 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. No Image notice by admin 2024/04/23 by admin
    Views 134 

    CUBRID 사용자를 위한 DBeaver 도구 출시 안내

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

  3. 자동백업 시간 설정한 시간과 2시간 차이가 납니다.

  4. 이중화 모드에서 cubrid changemode 가 안먹을때 확인 방법이 있나요?

  5. 이중화 씨 락상태가 30분 정도 걸려있다가 재기동 하면 바로 안올라오나요?

  6. 큐브리드 설치후 실행시 오류 뜨는현상

  7. CUBRID SHARD

  8. DBA 계정 및 테이블 리스트 문의

  9. cubrid service start 하면 발생하는 오류

  10. CSQL 정상 접속 확인 여부 및 테이블리스트 확인법

  11. DB 접속 및 복구 불가

  12. 오류가 이런게나서 이중화 한쪽이 안올리가는데 무슨에런 인가요?

  13. CUBRID/conf/cubrid_broker.conf 파일에 auto_commit 설정이 없으면 추가해야 하나요?

  14. 데이터베이스 별 사용량 확인및 처리 방법

  15. HA기능 WINDOW서버

  16. cubrid server 시작 시 fail

  17. 많은 레코드 건수를 반복적 저장하는 방법

  18. loadb 인덱스 처리 옵션 문의 입니다.

  19. testdb_t숫자, testdb_x숫자 형식으로 있는 파일 삭제 해도 되나요?

  20. 급합니다. 이중화 상태에서 한쪽 db가 죽어서 다시 살리는 방법 좀 알려주세요

  21. Overflow occurred in addition context 오류

  22. cubrid 실행 시 오류

Board Pagination Prev 1 ... 59 60 61 62 63 64 65 66 67 68 ... 201 Next
/ 201

Contact Cubrid

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