Background Image

FORUM

2018.12.27 16:42

java 저장 함수에서

조회 수 327 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 64bit
CUBRID Ver.
CUBRID 9.3 (9.3.9.0002) (64bit release build for Windows_NT) (Aug  4 2017 12:26:47)
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

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


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

java 저장 함수에서 한 자리 이상의 소수점을 가진 BigDecimal 값 리턴 시 오류가 발생합니다.

SQL 반환타입 : NUMERIC, 자바 반환타입: java.math.BigDecimal

자바에서 scale하여 소수점 둘쨋자리까지로 반올림하여 리턴하도록 구현했습니다.


실행 오류 : -693

Overflow occurred on data type Numeric.


CREATE FUNCTION getexchamount (

p_amt NUMERIC,

p_exch_cur STRING,

p_bas_cur STRING,

p_exch_date STRING

) RETURN NUMERIC

AS LANGUAGE JAVA NAME 'TEST_FN.getExchAmount(java.math.BigDecimal,java.lang.String,java.lang.String,java.lang.String) return java.math.BigDecimal'


소수점 첫쨋자리까지로 반올림하여 리턴하는 경우에는 오류가 발생하지는 않지만 소수점이 없어지고 반올림된 정수로 결과가 나옵니다.


소숫점을 포함한 숫자를 리턴 받으려면 어떻게 처리해야 하나요? 답변 부탁드립니다.

  • ?
    성진 2018.12.27 16:44
    DOUBLE로 받으시면 될 것 같습니다.
  • ?
    klee 2018.12.27 18:44
    해당 리턴값으로 java에서 BigDecimal로 연산하는 경우도 있습니다. 요구사항에 따라 스케일이 더 클 수도 있구요. double형은 부동소수점 오류가 발생할 수 있어 지양하는 바입니다. SQL리턴타입을 numeric(20,5) 이런식으로 지정하고 싶은데.. 다른 방법은 없는지요..?

  1. CUBRID 사용자를 위한 DBeaver 도구 출시 안내

    Date2024.04.23 Byadmin Views52
    read more
  2. SQLGate for CUBRID 영구 무료 라이선스 제공

    Date2020.04.09 Byadmin Views4458
    read more
  3. java 저장 함수에서

    Date2018.12.27 Byklee Views327
    Read More
  4. 단일 index 여러개사용시 질문입니다

    Date2018.12.26 By쭌쿰 Views1159
    Read More
  5. 다중 (3중) 조인의 경우, 조인 키 순서에 따라 join 의 종류가 달라지나요?

    Date2018.12.24 By신비로운입 Views10195
    Read More
  6. 테이블이 시스템테이블만 보입니다. 왜그럴까요 ?

    Date2018.12.19 By큐브리드쓰자 Views223
    Read More
  7. table name 조회

    Date2018.12.11 Byabg Views719
    Read More
  8. 서버 재기동후 접속불가

    Date2018.12.11 Byjoke7 Views1199
    Read More
  9. Windows10에서 Accessor is invalid 에러가 발생되는데, 확인좀 부탁드립니다.

    Date2018.12.07 Bysec_smd Views425
    Read More
  10. cubrid jdbc driver의 CUBRIDStatement 클래스 isClosed 구현 요청

    Date2018.12.04 Byminecoupe Views1395
    Read More
  11. 큐브리드 서비스 다운 이후 시작이 되지않는 현상 문의

    Date2018.11.27 By이세민 Views488
    Read More
  12. 마이그레이션 문의드립니다.

    Date2018.11.27 By동건 Views242
    Read More
  13. 오라클의 listagg 기능이 큐브리드에 있을까요?

    Date2018.11.21 By위니텍 Views1261
    Read More
  14. [문의] DB가 안 붙을때 확인사항

    Date2018.11.19 By금먼지 Views560
    Read More
  15. 큐브리드 매니저가 매우 느립니다.

    Date2018.11.09 By푸품달 Views987
    Read More
  16. python 드라이버 문의

    Date2018.11.09 By물병 Views210
    Read More
  17. 리눅스에 CUBRID에 있는 데이터를 WIndows로 옮기는 방법

    Date2018.11.07 By복슬 Views711
    Read More
  18. CUBRID 호스트에 연결할 수 없습니다. 에러 해결 방법

    Date2018.11.06 By셍셍 Views1826
    Read More
  19. 데드락 관련 설정 문제

    Date2018.11.05 By왕왕초보 Views398
    Read More
  20. cubrid manager 설치문의

    Date2018.11.05 Bypower Views350
    Read More
  21. 데이터베이스 오류 로그가 남지 않도록 하는 설정 값이 있나요?

    Date2018.11.01 By함동수 Views190
    Read More
  22. JDBC URL 질문입니다.

    Date2018.10.24 By선정선정 Views1394
    Read More
Board Pagination Prev 1 ... 50 51 52 53 54 55 56 57 58 59 ... 200 Next
/ 200

Contact Cubrid

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