Background Image

FORUM

조회 수 21788 추천 수 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
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4438
944 큐브리드에 Synonym기능 있나요? 1 김성일컴퍼니 2013.07.18 10889
943 ACTIVE_SESSION 이 48수치에 DB 다운되어 버립니다. 13 안토니오 2010.07.25 10904
942 큐브리드 매니저 connect timed out. 오류 1 아이쿠두야 2012.03.23 10923
941 php 모듈설치가 안되요 5 sapr 2009.11.26 10923
940 큐브리드2008의 DB로드/언로드 기능으로 마이그레이션 방법 문의 12 file 고영진 2009.09.11 10925
939 쿼리 브라우져 가져오기 오류 질문 4 joke7 2013.12.08 10928
938 [질문] APC_Install-tools 1.4 사용시 ~ 2 file 야매코더 2009.03.17 10933
937 updateblob에 대한 문의 입니다. 1 짱똘 2009.10.28 10937
936 MSSQL에서 큐브리드 연동 3 미곰 2016.05.24 10949
935 접속자의 아이피나 맥어드레스를 알아낼수 있는지요 3 유니콘 2012.12.05 10955
934 초보 질문드립니다^^:(인스턴스 갱신) 1 박동진 2009.03.12 10961
933 맥에서 cubrid query browser 실행이 안됩니다. 1 zbqmflem12345 2014.03.29 10964
932 cubridmanager 실행시 오류 입니다. 1 하하보이 2010.12.11 10969
931 원하는 테이블에 데이터를 추가 하고싶으면 어떻게 하나요? 1 나동호 2009.03.25 10981
930 매니저 오류 문의 4 file Kai 2014.01.06 10991
929 오류의 의미?? 10 천상 2016.06.21 10991
928 임시테이블에 대한 지원 계획은 있는지 궁금합니다 2 김종언 2010.07.28 10994
927 뷰 테이블 편집 cascade 오류 1 초보 2010.03.06 11003
926 Cubrid 2008 R 1.3 설치중 에러메시지 3 동진 2009.03.23 11008
925 라이센스 관련 문의 입니다. 1 foxman 2011.01.25 11010
Board Pagination Prev 1 ... 148 149 150 151 152 153 154 155 156 157 ... 200 Next
/ 200

Contact Cubrid

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