Background Image

FORUM

2018.08.22 19:18

serial 사용시 에러

조회 수 616 추천 수 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
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 55
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4461
1135 오라클에서 큐브리드로 마이그레이션 방법이 있나요? 1 삽질쟁이 2009.03.03 16004
1134 오라클의 LAG (위 Row 값), LEAD (아래 Row 값) 가져올수 있는 쿼리 대체할만한것이 있나요? 2 거만고양이 2015.03.29 12419
1133 오라클의 Aggregation Function(집합 함수) 관련 문의 2 샤방석이 2013.11.14 24635
1132 오라클의 SUBSTRB 기능 문의 3 방글이 2023.12.26 110
1131 오라클의 USER_CONSTRAINTS 1 agkim 2013.10.28 9283
1130 오라클의 contains()문과 비슷한 기능을 소개해주세요 1 타이거팀 2009.02.17 36304
1129 오라클의 listagg 기능이 큐브리드에 있을까요? 5 위니텍 2018.11.21 1261
1128 오라클의 with 테이블명 as 구문은 큐브리드에서 사용이 안되는지요? 2 최범규 2017.04.06 9219
1127 오류 관련 문의 드립니다. 1 secret 아코 2015.05.27 10
1126 오류 관련 문의 드립니다. 1 secret 아코 2015.05.28 11
1125 오류 꼭 좀 도와주세요 ㅠㅠ 8 딩이 2010.08.25 9852
1124 오류 메세지 문의 Derived column names are not allowed for simple class specifications. 4 달이맘 2023.12.01 125
1123 오류 좀 봐주세요...ㅜㅜ 1 secret 반갑습니다 2016.07.01 15
1122 오류 좀 확인해주세요ㅜㅜ 2 푸른잔디 2009.12.04 21925
1121 오류 코드 관련 문의 1 ........ 2013.02.12 5819
1120 오류 해결방법을 몰라 질문드립니다. 4 삼구 2012.05.16 11307
1119 오류 확인 부탁합니다, 1 배철 2020.07.02 734
1118 오류(연결을 얻을수 없습니다.) 1 맑고푸른하늘 2011.03.25 12002
1117 오류가 이런게나서 이중화 한쪽이 안올리가는데 무슨에런 인가요? 1 coolkkm 2017.12.09 595
1116 오류구문이 뜹니다. 3 초보 2010.02.03 8841
Board Pagination Prev 1 ... 139 140 141 142 143 144 145 146 147 148 ... 200 Next
/ 200

Contact Cubrid

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