tibero cast 오류 문의 드립니다. 0

by 환상의딸기 [Tibero] [2022.05.30 13:44:15]


안녕하세요

oracle에서 tibero로 함수를 전환중에 있는데 오라클에선 장상동작하는 함수가 티베로에선 오류가 납니다.

개체 유옇을 아래와 같이 생성하고

CREATE OR REPLACE TYPE        IVELES."TYP_STRG_BLCK_RECORD"                                          AS OBJECT
(
  STRG_BLCK_NO varchar(5)
)

컬렉션 유형을 아래와 같이 생성한 후에

CREATE OR REPLACE TYPE IVELES."TYP_STRG_BLCK_TABLE" AS TABLE OF TYP_STRG_BLCK_RECORD

아래와 같이 쿼리를 실행하면 오라클에선 정상 실행되나 티베로에선 오류가 납니다.

CREATE OR REPLACE FUNCTION FUN_GET_STRG_BLCK_LIST
(
   A_COMP_CD        IN CM_COMPANY.COMP_CD%TYPE,
   A_PORT_CD          IN CM_PORT_CD.PORT_CD%TYPE,
   A_STRG_YARD_NO     IN CM_STRG_YARD.STRG_YARD_NO%TYPE,
   A_SCOPE           IN VARCHAR2
)
RETURN TYP_STRG_BLCK_TABLE
IS
   V_STRG_BLCK_TABLE   TYP_STRG_BLCK_TABLE;
BEGIN
      SELECT CAST
             (
                MULTISET
                (
                   SELECT STRG_BLCK_NO
                     FROM CM_STRG_BLCK
                    WHERE COMP_CD = A_COMP_CD
                      AND PORT_CD = A_PORT_CD
                         AND STRG_YARD_NO = A_STRG_YARD_NO
                         AND USE_FG = 'Y'
                )
                AS TYP_STRG_BLCK_TABLE
             )
      INTO   V_STRG_BLCK_TABLE
      FROM   DUAL ;

   RETURN V_STRG_BLCK_TABLE ;
END ;

 

오류는 TBR-11021: Error occurred during type casting. 인데

CM_STRG_BLCK 테이블의 데이터 타입도 STRG_BLCK_NO varchar(5) 인데 어디가 잘못되어서 저런 오류가 날까요?

오전부터 계속 바꿔도 보고 구글링해봐도 답을 찾을수가 없네요....

원인이 뭔지 해결방법은 뭔지 궁금합니다.

혹시 아시는분 계시면 답변 부탁드리겠습니다.

감사합니다.

by 환상의딸기 [2022.06.04 01:46:19]

해결하였습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입