Background Image

FORUM

2022.11.07 15:11

큐부리드 함수 문의

조회 수 117 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

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


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
 Linux 64bit
CUBRID Ver.
11.2.1
CUBRID TOOL Ver.
sqlgate
응용 환경(API)
 


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


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

함수 사용이 많고 쿼리문 작성시 함수 때문에 에러가 너무 자주나 

임시 테이블로 함수부분만 분리하여 쿼리를 만들었습니다. 

(함수를 사용한건 조인이 너무많고 목록 데이터를  포문으로 가공하는 경우가 많아  어쩔수 없는 부분이 있습니다. )

이렇게 해도 쿼리 성공 여부가 항상 일정하지가 않습니다. 계속 잘 실행되다가도

stored procedure .... 에러가 발생합니다. 왜 그럴까요???

 

*함수 자바 파일 첨부하였습니다. 

 

with tmp as (
select 
reg_no, rank_no,
GET_CG_WON_SML_RN(reg_no, rank_no) as GET_CG_WON_SML_RN,
GET_CD_NM('CG_DM',reg_o_cd) as CG_DM_GET_CD_NM,
GET_CG_RD_SITE_NMS(reg_no, rank_no) as GET_CG_RD_SITE_NMS,
GET_CG_SITE_CHGYN(reg_no, rank_no) as  GET_CG_SITE_CHGYN,
GET_CG_MK_CHGYN(reg_no, rank_no)as GET_CG_MK_CHGYN,
GET_CG_DUP_MINE_CHGYN(reg_no, rank_no) as GET_CG_DUP_MINE_CHGYN,
GET_CG_WON_MK_NMS(reg_no, rank_no) as GET_CG_WON_MK_NMS,
GET_CG_RD_WON_MK_NMS(reg_no, rank_no) as GET_CG_RD_WON_MK_NMS,
GET_CG_DUPMINEH_RN(reg_no, rank_no) as GET_CG_DUPMINEH_RN,
GET_CG_RD_DUPMINEH_RN(reg_no, rank_no) as GET_CG_RD_DUPMINEH_RN
from cg_won_his 
where reg_no='000125'
)


select 
    FMT_DT(REPLACE(acc_dt,'-',''),'M') as acc_dt, 
       IF(CHAR_LENGTH(RTRIM(armk_lst)) > 0,'부'||REPLACE(armk_lst,',',', 부'),'') as R_ARMK_LST,
       IF(CHAR_LENGTH(RTRIM(acc_no)) > 0,'제'|| to_number(acc_no) ||'호','') as ACC_NO_COMBO, 
       decode(armk_no,'0','',IF(CHAR_LENGTH(RTRIM(armk_no)) > 0,'부기'|| armk_no ||'호','')) as R_ARMK_NO, 
       FMT_DT(replace(a.reg_dt,'-',''),'M') as reg_dt1,
       a.rank_no,  
       IF(CHAR_LENGTH(RTRIM(lnd_r)) > 0,'제'|| lnd_r ||'호','') as LND_COMBO,
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'존속기간   ' || REPLACE(FMT('D', dt_fr),'-','/') || '~' || REPLACE(FMT('D',dt_to),'-','/')||'   '||  term_yr ||'개년','') as dt_combo, 
       IF(CHAR_LENGTH(RTRIM(GET_CG_WON_MK_NMS)) > 0,GET_CG_WON_MK_NMS,'') as MK_COMBO,
       GET_CG_WON_SML_RN as F_SML_NM_RN,
       CG_DM_GET_CD_NM REG_O_CD_NM, 
       area_chg,
       dt_chg,
       IF(CHAR_LENGTH(RTRIM(reg_area)) > 0,'등록면적    '||reg_area|| decode(area_gbn,'1','평','0','ha'),'') as REG_AREA_GBN,
       GET_CG_RD_SITE_NMS as SITE_NM,
       GET_CG_SITE_CHGYN as SITE_CHG_YN,
       GET_CG_MK_CHGYN as MK_CHG_YN,
       REPLACE(GET_CG_DUPMINEH_RN,',','') as DUP_REG_NO_NMS,
       GET_CG_DUP_MINE_CHGYN as DM_CHG_YN,
       IF(CHAR_LENGTH(RTRIM(jk_no)) > 0,'조광권번호   '|| jk_no,'')  as jk_no_nm,
       area_dsp, land_dsp, sml_chg, term_dsp,  jk_dsp, jk_chg,
       ers_dsp, ers_chg,
       to_number(a.reg_no) as reg_no,
       jk_no,
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||seq_no as seq_no,
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||chg_cnt as chg_cnt,  
       IF(
             area_dsp='1' and  agbn_chg='1' or
             area_dsp='1' and  area_chg='1' or
             land_dsp='1' and  land_chg='1' or 
             land_dsp='1' and  sml_chg='1' or 
             term_dsp='1' and  dt_chg='1' or  
             jk_dsp='1' and jk_chg='1' or 
             ers_dsp='1' and ers_chg='1' or 
             GET_CG_DUP_MINE_CHGYN='1' or 
             GET_CG_SITE_CHGYN ='1' or 
             GET_CG_MK_CHGYN='1', '#','')||
             CG_DM_GET_CD_NM||IF(CG_DM_GET_CD_NM = '','',',')||
       IF(GET_CG_SITE_CHGYN='1','#','')||IF(GET_CG_RD_SITE_NMS  = '','','소재지,')||
       GET_CG_RD_SITE_NMS||
       IF(term_dsp='0','',IF(dt_chg='1','#','')||
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'존속기간   ' ||FMT('D', dt_fr) || '~' ||FMT('D',dt_to)||'   '||  term_yr ||'개년','') )||
       IF(CHAR_LENGTH(RTRIM(dt_to)) > 0,'',',')||
       IF(GET_CG_MK_CHGYN='1','#','')||
       IF(GET_CG_WON_MK_NMS  = '','','광종명,')||
       IF(GET_CG_MK_CHGYN='1','#','')||GET_CG_RD_WON_MK_NMS||
       IF(GET_CG_WON_MK_NMS  = '','',',')||
       IF(jk_dsp='0','',IF(jk_chg='1','#',''))||IF(jk_dsp='0' or jk_no='','',',')||
       IF(area_dsp='0','',IF(area_chg='1','#','')||
       IF(CHAR_LENGTH(RTRIM(reg_area)) > 0,'등록면적    '||reg_area||decode(area_gbn,'1','평','0','ha'),''))||
       IF(area_dsp='0' or reg_area='','',',')||
       IF(
            land_dsp='1' and land_chg='1' or
            land_dsp='1' and sml_chg='1', '#','')||
            IF(
            land_dsp='1' , 
            '지적 '|| 
            (SELECT u.cdnm FROM unicode u WHERE u.gcd = 'G' AND u.cd = a.lnd_r)
            || '  '|| lnd_no ||' 호  '||GET_CG_WON_SML_RN,'')||
            IF(land_dsp='0' or lnd_r='','',',')||
       IF(GET_CG_DUP_MINE_CHGYN='1','#','')||
       IF(GET_CG_DUPMINEH_RN  = '','','중복광구,')||GET_CG_RD_DUPMINEH_RN as won_combo,
       etc
from cg_won_his a, tmp b
where a.reg_no=b.reg_no
and a.rank_no = b.rank_no
AND a.reg_no = '000125'
and a.rank_no>1;

 

  • ?
    큐브리드_김주현 2022.11.07 15:56
    큐브리드를 이용해 주셔서 감사합니다.

    올려주신 select에서 사용하는 java SP함수들이 많고, 어디서 에러가 발생하는지 명확하지 않아 이것을 모두 확인하기는 어려울 것 같습니다.

    $CUBRID/java0.log에 관련 log가 남겨지니 이를 확인하여 java 코드를 디버깅해보셔야 할 것 같습니다.

    많은 도움이 되질 못해 죄송합니다.
    감사합니다.
  • ?
    오명환 2022.11.07 16:01
    11.2.2 버전으로 패치 업그레이드를 진행하시고 테스트 부탁드립니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 61
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4464
497 restoredb 진행시 오류가 발생합니다. 3 samsam 2023.12.08 116
496 ELO타입이 무엇인가요? 1 sobubble 2023.06.27 116
495 파티션 테이블 성능 문의 4 file 방글이 2024.01.11 116
494 insert 관련 문의 드립니다. 2 화니 2019.01.28 115
493 전체테이블 1 삐삐 2019.01.28 115
492 ADO.NET columninfos 반환값 관련 문의 Js 2020.05.26 115
491 큐브리드 설치 문의 1 file 팡이 2023.02.09 115
490 문의사항 2(csql, java스토어드프로시저)개 3 go 2021.10.14 115
489 데이터베이스 생성시 볼륨 질문 1 덴드로비움 2022.06.23 115
488 where in () 서브쿼리 관련 문의입니다 1 제리리 2023.03.27 114
487 CUBRIDDataReader row count와 DataTable row카운트가 다른이유 어낚 2022.10.13 114
486 unloaddb internal system failure 문의 1 bchlim 2021.02.26 113
485 릴리즈된 ADO.NET 드라이버를 다운받을수 없습니다. 4 모비23 2019.03.27 113
484 Log 문의 2 jungsin 2021.06.25 113
483 인덱스 사용 관련하여 문의드립니다. 1 neighbor 2023.12.12 113
482 lv 0으로 백업하고 있는데, 백업 파일의 용량이 항상 같습니다. 2 루루팜 2022.01.11 113
481 [성능이슈] 큐브리드 함수 사용으로 인한 성능이슈 3 레고 2024.03.04 113
480 서버 메모리 교체 및 ha 상 데이터 삭제 절차 1 레피엘 2023.04.20 113
479 XADatasource 사용시 롤백 이슈 1 devcc 2022.03.22 113
478 시리얼 생성 시 class_name, attr_name, started 컬럼 값을 변경하고 싶습니다. 1 file getpost 2023.11.01 113
Board Pagination Prev 1 ... 171 172 173 174 175 176 177 178 179 180 ... 200 Next
/ 200

Contact Cubrid

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