Background Image

FORUM

조회 수 21804 추천 수 0 댓글 8
?

단축키

Prev이전 문서

Next다음 문서

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

CUBRID R 8.4.0에서 작업하고 있습니다.

JDK 1.6.0_11을 설치하고 매뉴얼에 나와 있는대로 환경변수들을 설정하였습니다.


그리고 Stored procedure를 하나 만들어서 등록하고 테스트해보는데 실행하면 

CALL cust_tb_insert_new(NULL,'100','%','이초명',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);



실행결과:

실행 오류 :-889

1번째 라인 실행 오류


오류 설명:

Stored procedure execute error: java.lang.ClassNotFoundException: java.lang.String cust_code


환경변수설정은 다시 체크해보았는데 오류가 없는거 같고요...


오류원인을 어디서 찾아야 할지 ...

고수님들 답변부탁드립니다.

  • ?
    cubebridge 2011.11.01 08:30

    안녕하세요.

    좋은 질문 감사합니다. 문의하신 내용에 대하여 빠른 시일 내에 확인 후 답변을 드리도록 하겠습니다.

  • ?
    이용미 2011.11.01 19:01

    loadjava로 로딩된 class 파일을 CUBRID DB 파일(볼륨)이 위치한 java 디렉토리 안에 procedure class file 두고 loadjava로 다시 로딩 후 테스트해 보세요.

  • ?
    jetli_2012 2011.11.01 19:11

    loadjava유틸로 컴파일된파일 .class파일을 .java폴더에 로드된 상태이고요. 이 클래스에 정의된 메소드를 저장프로시저로 등록하는데는 성공하였습니다. 

    다시 테스트해보았지만 호출단계에서 같은오류가 발생합니다.


    환경변수설정은 아래와 같이 햇습니다.

    JAVA_HOME= C:Program FilesJavajdk1.6.0_11

    PATH=%PATH%;%JAVA_HOME%bin

    CLASSPATH=C:CUBRIDjdbccubrid_jdbc.jar:. 

    PATH=%PATH%;%JAVA_HOME%jrebinclient


    부탁드립니다.

  • ?
    이용미 2011.11.01 19:29

    procedure/function의 등록 방법과 JAVA 소스에서 해당 메소드의 선언부를 알려주시기 바랍니다.

  • ?
    jetli_2012 2011.11.01 19:44

    메소드의 선언부입니다.


    import java.sql.*;


    public class cust_tb_class{

         public static  String cust_tb_insert_new( 

         String cust_code,

         String nati_code, 

    String cust_grp, 

    String cust_hnm,

    String cust_enm,

    String reg_grp,

    String cust_no,

    String home_addr,

    String home_addr_det,

    String telphone_no,

    String mobile_no,

    String other_no,

    String fax_no,

    String email_no,

    String sms_no,

    String place_code,

    String post_addr,

    String post_addr_det,

    String repres_hnm,

    String repres_no,

    String business_type,

    String business_kind,

    String insincerity_yn,

    String quit_yn,

    String copy_yn,

    String calcissue_yn,

    String refer_item,

    Date issue_ymd,

    String work_id,

    Timestamp work_ymd,

    String work_tty,

    Date end_ymd,

    String sort_han,

    String chng_code) {...}


    등록은 큐브리드매니저에서 질의 편집기로 아래의 질의를 실행하였습니다.

    CREATE PROCEDURE CUST_TB_INSERT_NEW(

     cust_code VARCHAR(7),

     nati_code VARCHAR(3) ,

     cust_grp   VARCHAR(1),

     cust_hnm   varchar(40) ,

     cust_enm   varchar(40) ,

     reg_grp   char(1) ,

     cust_no   varchar(20) ,

     home_addr varchar(8),

     home_addr_det varchar(60),

     telphone_no varchar(20),

     mobile_no varchar(20),

     other_no varchar(20),

     fax_no varchar(20),

     email_addr varchar(40),

     sms_no varchar(50),

     place_code varchar(7),

     post_addr varchar(8),

     post_addr_det varchar(60),

     repres_hnm varchar(30),

     repres_no   varchar(20),

     business_type varchar(50),

     business_kind varchar(50),

     insincerity_yn varchar(1),

     quit_yn varchar(1),

     copy_yn varchar(1),

     calcissue_yn varchar(1),

     refer_item varchar(100),

     issue_ymd DATE,

     work_id varchar(6),

     work_ymd TIMESTAMP,

     work_tty varchar(10),

     end_ymd DATE ,

     sort_han varchar(30),

     chng_code varchar(7)

     )

     AS LANGUAGE JAVA

     NAME 'cust_tb_class.cust_tb_insert_new(

    java.lang.String cust_code,

    java.lang.String nati_code,

    java.lang.String cust_grp,

    java.lang.String cust_hnm,

    java.lang.String cust_enm,

    java.lang.String reg_grp,

    java.lang.String cust_no,

    java.lang.String home_addr,

    java.lang.String home_addr_det,

    java.lang.String telphone_no,

    java.lang.String mobile_no,

    java.lang.String other_no,

    java.lang.String fax_no,

    java.lang.String email_no,

    java.lang.String sms_no,

    java.lang.String place_code,

    java.lang.String post_addr,

    java.lang.String post_addr_det,

    java.lang.String repres_hnm,

    java.lang.String repres_no,

    java.lang.String business_type,

    java.lang.String business_kind,

    java.lang.String insincerity_yn,

    java.lang.String quit_yn,

    java.lang.String copy_yn,

    java.lang.String calcissue_yn,

    java.lang.String refer_item,

    java.sql.Date issue_ymd,

    java.lang.String work_id,

    java.sql.Timestamp work_ymd,

    java.lang.String work_tty,

    java.sql.Date end_ymd,

    java.lang.String sort_han,

    java.lang.String chng_code)';


  • ?
    이용미 2011.11.01 23:36
    Procedure의 등록 부분에서 create 다음에 varchar에 따로 크기를 지정하지 않습니다. 그러므로 varchar만 써주시고, name 뒤, java.lang.String 뒤에 cust_code, nati_code, cust_grp….부분을 제거 후 재실행해보세요.

     

    이해 하기 쉬우시도록 예문을 첨부합니다.
    CREATE PROCEDURE Athlete_Add(name varchar,gender varchar, nation_code varchar, event varchar)
    AS LANGUAGE JAVA
    NAME 'Athlete.Athlete(java.lang.String, java.lang.String, java.lang.String, java.lang.String)';

     

    Create procedure시, 문법 검사를 하지 않기 때문에 별다른 오류 없이 등록이 되었을 수가 있습니다. 자세한 것은 http://www.cubrid.org/manual/ko/8.4.4/sql/jsp.html#id9 을 참고하시면 도움이 될 것 입니다.


    혹, 수정 후에도 실행이 제대로 되지 않으신다면, 메뉴얼에 있는 예제를 먼저 수행해 보시고, 제대로 수행되는지 한번 Test를 해 보셔야 할 것 같습니다.

     

    감사합니다.

  • ?
    jetli_2012 2011.11.02 00:34

    정말 감사합니다.

    알려주신대로 하니 호출에서 오류가 없어졌습니다.

    한가지더 알려주시면 감사하겠습니다. 자바클래스를 eclipse에서 만들고 있는데 저장프로시저로 등록하기전에 정확히 동작하는지 확인할수있는 방법이 있겟는지요. 실행시 오류를 어떻게 작업시에 추적할수있는 방법이따로이 없는지해서요.

    번거롭게 해드려서 미안합니다.


  • ?
    이용미 2011.11.02 00:42

    도움이 되셨다니 다행입니다^^;;

     

    정확히 동작하는지 확인하는 방법에 대해서는 stored procedure 형태로는 어려우나, main 형태로 등록하여 동작이 제대로 수행되는지 알아보셔야 할 것 같습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 142
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4481
1145 jdbc 연결시 지속적으로 뜨는 exception. 1 김동진81 2009.09.15 10130
1144 큐브리드 매니저 실행 시 무반응 3 코버스 2015.04.15 10130
1143 VC 2005 에 가장 적합한 api 가 어떤것인가요? 1 엥꼬 2011.04.02 10135
1142 csql -u -p -i DB명 캐릭터 셋 설정 1 쩡저리 2013.12.05 10136
1141 DB수가 많을때 다중 브로커 문의드립니다 1 유니콘 2013.05.08 10136
1140 윈7 64비트 사용 불가 3 file 갈축 2009.10.28 10145
1139 단일 서버에서 복제구현이 가능한지? 3 핸프맨 2010.03.06 10147
1138 php에서 큐브리드 사용하기 5 파스크란 2014.02.03 10147
1137 테이블 내 데이터타입 값 변경문제 문의 2 아네모네 2016.03.25 10149
1136 데이터 추출 관련 질문입니다. 5 노스 2010.09.08 10158
1135 substr 질의결과 2 file agkim 2013.09.27 10159
1134 CLOB 타입 NOT NULL 허용이 안되는지요? 1 최범규 2017.03.31 10162
1133 큰 자리수 연산 문의 1 초콜릿75 2013.08.01 10163
1132 comment 기능 질문입니다. 1 Hnyy.J 2017.01.24 10165
1131 라이선스 관련 문의 할게 있습니다. 1 이프 2010.04.16 10169
1130 migration tool을 이용해 마이그레이션 작업 중 테이블의 데이터 적재 실패 문제 6 엔하늘 2011.07.11 10172
1129 ODBC, OLEDB 별도 설치 방법좀 알려주세요... 4 배우자.. 2009.08.16 10178
1128 중국어 XP에서는 큐브리드 ODBC를 사용 할 수 없나요?? 5 푸른잔디 2009.12.10 10179
1127 migration 후 EntityGraph 기능 에러 관련 문의드립니다. 1 file 박종훈 2016.06.22 10184
1126 테이블 파티션 문의 4 초보 2010.04.09 10186
Board Pagination Prev 1 ... 139 140 141 142 143 144 145 146 147 148 ... 201 Next
/ 201

Contact Cubrid

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