Background Image

FORUM

조회 수 1704 추천 수 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'

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 21
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4452
1291 MyBatis에서 clob 데이터 이상현상 문의 권태성 2017.11.08 717
1290 DB복구 3 hoon 2017.11.08 1028
1289 DB내보내기에서 스키마 파일 문의드립니다 3 qswaert 2017.11.08 587
1288 날짜시간 함수를 조건 절에서 어떻게 처리하는지 궁금해서요 1 펌피 2017.11.08 4756
1287 DB복구 질문드립니다. 7 hoon 2017.11.09 933
1286 CUBRID 10.1 64bit LINUX 다운이 안되네요 1 뿡뿌이다네 2017.11.09 153
1285 Upgrading From CUBRID 2008 R4.1/R4.3/R4.4 To CUBRID 10.1 시 문의사항 3 뿡뿌이다네 2017.11.09 129
1284 트리거 작성 도중 알 수 없는 오류가 발생했습니다. 1 코코밥 2017.11.09 342
1283 사용하던 view 가 갑자기 사라지는 현상 1 coolkkm 2017.11.13 162
1282 큐브리드 설치 후 디비 서버 시작 실패 3 뿡뿌이다네 2017.11.13 486
1281 큐브리드 10.1.0 PHP driver 확인 1 뿡뿌이다네 2017.11.13 197
1280 CUBRID 10.1 LIST Partition 생성 오류 2 종이 2017.11.14 406
1279 DB 이전관련 질문 드립니다. 1 hoon 2017.11.14 463
1278 CUBRID Manager 영문버전 제공여부 2 bikehee 2017.11.14 166
1277 DB 이전 문제 문의 드립니다. 3 hoon 2017.11.15 390
1276 연계과정에서 질문드릴게있습니다. 1 qswaert 2017.11.16 165
» UPPER 를 이용한 like 검색 과 한글 문제 1 akasima 2017.11.16 1704
1274 clob에서 varchar(1073741823) 으로 변경된 테이블 조회시 오래걸리는 현상 4 최범규 2017.11.17 1037
1273 DB연계과정에서 에러코드 발생되어 문의 드립니다. 1 file kik 2017.11.20 346
1272 쿼리 조회시 인덱스를 타지 않고 full scan 으로 나오는 경우 질문드립니다. 3 file 덴드로비움 2017.11.20 4354
Board Pagination Prev 1 ... 131 132 133 134 135 136 137 138 139 140 ... 200 Next
/ 200

Contact Cubrid

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