Background Image

FORUM

2018.08.22 19:18

serial 사용시 에러

조회 수 592 추천 수 0 댓글 12
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
큐브리드 9.3.0 사용 중이며 시리얼을 사용해서 대량 insert를 하고 있습니다.


인서트중에

" cubrid.jdbc.driver.CUBRIDException: Given precision of 0 is invalid; it should be greater than 0 and no greater than 38. "  에러가 나오는데


시리얼에서 수정을 해야 하는건가요?????

  • ?
    오명환 2018.08.23 13:33
    serial 자체 오류가 아닌 numeric 컬럼에 데이타를 입력하면서 발생하는 오류입니다.
    $CUBRID/log/broker/error_log 아래를 보시면, 오류가 발생한 sql를 찾을 수 있습니다. 그중 -649 오류를 발생한 질의문과 해당 컬럼의 스키마를 올려주시면 정확한 가이드를 드릴 수 있을 것 같습니다.
  • ?
    그루비 2018.08.24 10:34
    시리얼 스키마는 기본에서 이름만 준 상태이고.
    질의문은
    insert into msg_data(msg_seq, msg_subject, msg_type, msg_date, rslt_code) values(serial_sms.NEXT_VALUE,#msg_subject#, #msg_type#, #msg_date#, #rslt_code#);
    해당 쿼리를 3000건씩 4~5번정도 실행을 하면 나오는 에러입니다.
  • ?
    권호일 2018.08.24 11:15
    msg_data 테이블의 스키마를 올려주세요.
    msg_seq 컬럼 타입이 NUMERIC 타입으로 예상되며, 정수부 자리보다도 수수부 자리가 크게 설정되어 발생되는 현상으로 추측됩니다.
    msg_seq 컬럼 타입을 int 또는 bigint로 변경하여 실행하면 해결 될 것으로 보입니다.
  • ?
    그루비 2018.08.29 20:52
    데이터타입은 못바꿔서 numeric으로 사용합니다.
  • ?
    오명환 2018.08.24 11:15
    serial_sms.NEXT를 넣는 msg_seq의 data type이 무엇인가요 ?
    오류 메세지는 numeric data type에 발생하는 오류입니다.
    그리고, 해당 테이블에 trigger가 수행되는지도 확인해보세요.
    만약, trigger가 없으면, 오류 log에서 오류가 발생한 실제 수행하는 sql를 올려주세요.
  • ?
    그루비 2018.08.29 20:51
    데이터 타입은 numeric(38,0)입니다.
  • ?
    권호일 2018.08.29 22:07
    msg_data 테이블의 스키마를 올려주세요.
    $CUBRID/log/broker 디렉토리를 압축해서 올려주세요.
  • ?
    그루비 2018.08.29 23:15
    개발하는곳이 폐쇄망이라 불가합니다
  • ?
    그루비 2018.08.29 23:43
    해당 정보는 mgov.go.kr에 있는 문자시스템으로 하고 있습니다.
  • ?
    권호일 2018.08.30 10:19
    msg_data 테이블의 각 컬럼 데이타 타입은 무엇인가요?
  • ?
    그루비 2018.08.30 15:02
    msg_data - numeric(38,0)
    msg_subject - varchar2(2000)
    msg_type - numeric(1,0)
    msg_date - timestamp
    rslt_code - numeric(15,0)
  • ?
    권호일 2018.08.30 15:13
    테이블 설계가 정상적인건가요?
    일반적으로 type이나, code 컬럼은 varchar 타입으로 설계를 할텐데요.

    msg_seq 컬럼은 38자리로 serial값으로 인하여 모자랄 것으로 보여지는 않네요.
    추측으로는 msg_type 컬럼이 1자리로 되어 있고, 입력되는 값이 너무 길어서 발생 한 오류로 추측됩니다.

    msg_type 컬럼에 입력 되는 값을 확인해 보세요.
    msg_type 컬럼에 입력되는 값 확인이 어렵다면, 아래처럼 해당 컬럼의 길이를 늘려보세[요.

    ALTER TABLE msg_data MODIFY msg_type NUMERIC(38,0) ;

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4267
2876 초를 시분초로 바꾸는 방법 문의 드립니다. 1 qwerty 2018.09.18 1033
2875 큐브리드 ODBC설정방법문의 1 file 개발자1111 2018.09.18 658
2874 큐브리드 매니저 실행시 오류 3 file 개발자1111 2018.09.18 273
2873 데이터베이스 공간 정리(compactdb) 실행중 정지가능한가요? 1 배추 2018.09.11 340
2872 Cubrid 9.3 > 10.1 업그레이드 문의 1 술먹지마라 2018.09.11 345
2871 db link는 지원 계획이 있나요? 1 qwerty 2018.09.07 583
2870 [Cubrid 9.3] POSIX ERROR 문의 1 vasconcelos 2018.09.06 354
2869 문의드립니다. 3 팩트드림 2018.09.03 477
2868 Cubrid 9.3 isolation 이슈 문의 2 술먹지마라 2018.08.30 387
2867 CUBRID TDE 관련 질문 3 디비디비딥 2018.08.30 341
2866 Cubrid Linux용 ODBC가 없나요? 1 serapian 2018.08.28 453
» serial 사용시 에러 12 그루비 2018.08.22 592
2864 table명으로 컬럼에 대한 정보 조회질문입니다. 1 민진홍 2018.08.21 882
2863 JDBC 오류 메세지 발생 2 허접 2018.08.21 458
2862 alias 명 한글 깨짐 2 abc12 2018.08.13 53903
2861 큐브리드 sql문 질문입니다. 3 민진홍 2018.08.10 691
2860 JDBC Driver와 DB간 버전이 다를경우 1 아니 2018.08.08 417
2859 월별 파티션 테이블 생성 루프 3 재익신 2018.08.06 1019
2858 comment 질문 1 jyj0091 2018.08.03 1230
2857 UPDATE 문 WHERE절에 IN 큐피 2018.08.02 649
Board Pagination Prev 1 ... 51 52 53 54 55 56 57 58 59 60 ... 199 Next
/ 199

Contact Cubrid

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