Background Image

FORUM

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

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
9.3.7
CUBRID TOOL Ver.
cubrid 매니저
응용 환경(API)
java, jdbc

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
이전에 질문을 한번 드렸습니다. clob 처리시 char_to_clob, clob_to_char 함수를 사용한다고 하셨는데요.

이 함수를 사용해서 처리하는것과 해당 함수를 이용하지 않고 그냥 insert, update, select 하는 차이가 무엇인지요.

저희가 테스트를 진행할때 프로그램에서 따로 해당 함수를 사용하지 않아도 입력,수정,조회가 정상으로 진행이 되서요.

차이점이 무엇인지 알고 싶습니다. 


이전에 반드시 해당 함수를 사용해야 한다고 답변을 주셔서 차이점을 알고 싶습니다.

감사합니다.

  • ?
    주현 2017.07.22 00:37

    안녕하세요. 큐브리드를 이용해 주셔서 감사합니다.


    CLOB 이란?

    CUBRID의 매뉴얼에는 아래와 같이 나와 있다. 간단하게 설명하면, 사이즈가 큰 데이터를 외부 파일로 저장하기 위한 데이터 타입입니다.

    - 문자열 데이터를 DB 외부에 저장하기 위한 타입

    - CLOB 데이터의 최대 길이는 외부 저장소에서 생성 가능한 파일 크기

    - CLOB 타입은 SQL 문에서 문자열 타입으로 입출력 값을 표현한다. 즉, CHAR(n), VARCHAR(n), NCHAR(n), NCHAR VARYING(n) 타입과 호환된다. 단, 명시적 타입 변환만 허용되며, 데이터 길이가 서로 다른 경우에는 최대 길이가 작은 타입에 맞추어 절삭(truncate).

    - CLOB 타입 값을 문자열 값으로 변환하는 경우, 변환된 데이터는 최대 1GB를 넘을 수 없다. 반대로 문자열을 CLOB 타입으로 변환하는 경우, 변환된 데이터는 CLOB 저장소에서 제공하는 최대 파일 크기를 넘을 수 없다.


    clob타입을 사용했을 경우, databases.txt에 정의된 lob path에 해당 파일들이 저장되며, DB에서는 해당 경로의 정보만 가지고 있습니다.

    ex)

    csql> create table mmdb(id int, name char(20), name2 clob);

    csql> insert into mmdb values( 1, 'cubrid', 'cubrid');

    1 row affected. (0.001503 sec) Committed.


    csql> select * from mmdb;
    === <Result of SELECT Command in Line 1> ===
               id  name                  name2
    =========================================================
                1  'cubrid              '  file:/home/xxxx/DB/930DB/kkdb/lob/ces_705/mmdb.00001500618632021314_0987
    위와 같이 path정보만 가지고 있게 됩니다.

    결과를 출력하기 위해서는 clob_to_char()함수를 사용합니다.
    ex)
    csql> select id, clob_to_char(name2) from mmdb;
    === <Result of SELECT Command in Line 1> ===
               id   clob_to_char(name2)
    ===================================
                1  'cubrid'


    그래서 이전에 답변 드린바와 같이 

    1) 자료를 INSERT, UPDATE 시 CHAR_TO_CLOB(char_type_column_or_value)함수 사용

    2) 자료를 SELECT 시 CLOB_TO_CHAR(clob_type_column [USING charset])함수 사용

    로 가이드 한 것입니다.


    위 사항을 확인 후, 다시 검토 해보시기 바랍니다. 

    감사합니다.



List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 49
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3834 트랙잭션이 시스템에 의해 중단됩니다. 1 김현성 2011.05.26 11019
3833 튜토리얼 문서 보기가 너무 불편합니다. 1 김기석 2009.10.27 9423
3832 툴에서 튜닝모드로 수행했을 때 관련 1 file 잉여개발자 2018.05.16 330
3831 통신 프로토콜 질문 2 reerror 2011.10.14 8687
3830 톰캣과 호스팅서버 큐브리드 연동법 질문합니다. (JDBC) 1 ditatiic 2013.05.23 13622
3829 톰캣 연동시 설정 에러입니다. 1 file 깨똑 2014.01.09 19650
3828 텍스트 파일로 내보내기 관련 1 bchlim 2020.08.27 153
3827 텍스트 데이터의 검색관련 해서 질문합니다. 1 나이즈 2016.07.11 10208
3826 테이블정보검색(쿼리문 문의) 1 moon 2014.12.31 9086
3825 테이블이 지워졌는데도 씨리얼이 남아있는 현상에 대해서 1 김인선 2012.11.07 5853
3824 테이블이 어떤 스키마(데이터베이스)에 속해있는지 알 수 있는 방법이 있나요? 3 엘L 2024.01.29 117
3823 테이블이 시스템테이블만 보입니다. 왜그럴까요 ? 1 file 큐브리드쓰자 2018.12.19 223
3822 테이블의 크기 1 카르마 2011.01.10 10880
3821 테이블의 내용 컬럼을 다른 테이블에 분리시 성능 향상 여부 5 종이 2010.06.08 12726
3820 테이블의 권한은 다른 유저에게 줄수 있는데 함수,프로시져,트리거는 권한 안되나요?? 1 덴드로비움 2017.08.18 2523
3819 테이블을 메뉴로 삭제한 후 같은 이름으로 테이블을 생성할 수가 없습니다. 1 secret 너랑이마녀 2015.10.09 8
3818 테이블을 리스트 분할 후 count(*) 쿼리가 느립니다. 1 종이 2013.08.01 9898
3817 테이블에 있는 컬럼들중 특정값 있는 컬럼찾기 또수니 2016.03.12 7611
3816 테이블에 인덱스 추가시 사용자가 해당 테이블에 update, insert 등 할경우 lock 시간이 걸리는지요? 1 cho 2021.01.19 712
3815 테이블에 데이터가 있는데 select 하면 데이터를 못 얻어오네요; 1 하나엘 2009.11.19 9597
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 200 Next
/ 200

Contact Cubrid

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