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 138
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4477
3765 테이블 명세서 질문 1 joke7 2014.08.04 8020
3764 테이블 명세서 재 질문 1 joke7 2014.08.08 6610
3763 테이블 명세서 1 secret nenemi 2015.01.28 8
3762 테이블 데이터 삭제 중 오류 발생하여 데이터 베이스 시작이 안됩니다. 2 잡동사니 2011.01.14 11520
3761 테이블 단위 export 2 bchlim 2020.06.16 447
3760 테이블 내 데이터타입 값 변경문제 문의 2 아네모네 2016.03.25 10149
3759 테이블 구성 방안 문의 2 종이 2012.05.01 10621
3758 테이블 가져오기 수행방법 좀 알려주세요 1 file 이야기 2021.09.23 276
3757 테이블 alter 시 오류 메세지 1 김성일컴퍼니 2013.08.06 7268
3756 테이블 Drop 시킨후 컬럼 추가하여 생성시 소팅문제 4 지니보이 2010.07.03 8952
3755 테스트 한 결과 때문에 질문글 올립니다... 2 secret 반짝이 2011.05.24 17
3754 테스트 서버와 운영서버에 COUNT(*) 쿼리 실행 속도 차이 문의 1 종이 2019.12.29 382
3753 타입비교에 대해서 1 daltago87 2010.09.16 8380
3752 타서버의 풀백업 파일을 임포트 하는 방법이 뭔가요? 2 취우다 2017.04.27 6029
3751 타 큐브리드 db에 insert 하려면.. 1 백수인 2022.10.28 120
3750 클라이언트에서 원격지 DB로의 접속이 되지 않습니다... 9 김동진81 2009.10.08 14672
3749 클라이언트 원격지 접속 4 secret 차차오 2015.02.03 12
3748 클라우드 환경에서 데이터베이스 추가 관련 1 디콘플러스 2022.11.29 68
3747 클라우드 환경에서 cubird server 비정상 동작함. 6 맘마마마 2019.04.19 405
3746 큰 자리수 연산 문의 1 초콜릿75 2013.08.01 10163
Board Pagination Prev 1 ... 8 9 10 11 12 13 14 15 16 17 ... 201 Next
/ 201

Contact Cubrid

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