Background Image

FORUM

조회 수 2209 추천 수 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 122
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4476
3922 Java Maven Repository 2 내멋으로 2023.11.16 123
3921 Cubrid의 Window 버전의 Broker Port 구성 방식 2 jhlee 2023.11.15 103
3920 [CUBRID Admin] ENUM 데이터 내보내기 1 tree1891 2023.11.14 111
3919 CUBRIDException: Data type references are incompatible. 에러관련 쿼리질문 15 file yhpark 2023.11.14 220
3918 사용자 삭제 시 소유한 오브젝트를 함께 삭제하는 방법 1 f0081 2023.11.14 138
3917 unloaddb 에러 확인 요청. 1 정현 2023.11.13 92
3916 유저생성 함수 반복 실행 시, fatal error발생 2 f0081 2023.11.09 107
3915 11.2버전에서 사용자 스키마에 대해서 궁금한 것이 있습니다. 1 로키 2023.11.08 139
3914 저장프로시저 실행관련 문의 4 f0081 2023.11.08 139
3913 다른 소유자 테이블 검색 권한 2 박혀누 2023.11.08 143
3912 [CUBRID Admin] 사용자의 테이블 권한 편집 1 tree1891 2023.11.06 98
3911 3909번 답변 좀 부탁드립니다. f0081 2023.11.06 93
3910 [CUBRID Admin] 테이블 컬럼 순서 변경 불가 12 tree1891 2023.11.05 179
3909 시스템 카탈로그 조회 외 1 f0081 2023.11.01 123
3908 시리얼 생성 시 class_name, attr_name, started 컬럼 값을 변경하고 싶습니다. 1 file getpost 2023.11.01 113
3907 cubrid 9.3.1 설치해서 원격으로 접속하고자 설치했는데 에러가 뜹니다 3 file Xstar 2023.10.27 98
3906 loaddb 실행 중 발생하는 오류에 대해서 문의 드립니다. 1 file 뚜벅뚜벅 2023.10.19 105
3905 큐브리드 매니서 실행 문의 1 마리오 2023.10.19 96
3904 큐브리드 DB가 실행되지 않는 것 같습니다. 4 file 뚜벅뚜벅 2023.10.18 125
3903 ===<ResultofSELECTCommandinLine1>=== 등의 출력 없이 결과값만 반환받고 싶습니다. 3 f0081 2023.10.18 93
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 201 Next
/ 201

Contact Cubrid

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