database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 41988 게시물 읽기
No. 41988
ora 1008에러가 나는데 도움좀 부탁드립니다
작성자
덕(wonsamo)
작성일
2024-04-19 13:58
조회수
209

ora 1008에러가 나는데 이유를 모르겠습니다.


--------------------------------------------------------------------------------------- 


procedure p01(

        p_i_sundxc in  varchar2,

        p_i_ggdsxc in  varchar2,

        p_i_cgijxd in  varchar2,

        p_CGFIMC out char_,

        rv out number 

    ) as

        i number(8);

        type type_cur is ref cursor;

        rec type_cur;

        v_query varchar2(4000);

    begin

        p_CGFIMC := char_();

        begin

            i := 1;

            v_query := 

                'select' ||

                '    ''34100288_'' || substr(:1,4,1) || ''H'' || :2 || ''_'' || substr(:3,3,6) || ''_'' ||' ||

                '    decode( length(nvl(max(substr(RECEIPT_NAME,21,3)),0) + 1),' ||

                '             ''1'', ''0'' || to_char(nvl(max(substr(RECEIPT_NAME,21,3)),0) + 1),' ||

                '             to_char(nvl(max(  to_number(substr(RECEIPT_NAME,21,3))  ),0) + 1) )  cgfimc' ||

                ' from table01' ||

                ' where substr(RECEIPT_NAME,14,6) = substr(:3,3,6)' ||

                '    and substr(RECEIPT_NAME,10,1) = substr(:1,4,1)' ||

                '    and substr(RECEIPT_NAME,12,1) = :2' ||

                '';

            OPEN rec FOR v_query USING p_i_sundxc, p_i_ggdsxc, p_i_cgijxd;

            loop

                p_CGFIMC.extend(1);

                fetch rec into 

                    p_CGFIMC(i);

                EXIT WHEN rec%NOTFOUND;

                i := i + 1;

            end loop;

            rv := i - 1;

        EXCEPTION

            when NO_DATA_FOUND then

                rv := i - 1;

                return;

            WHEN OTHERS THEN

                rv := sqlcode;

                return;

        end;

    end;

 

이 글에 대한 댓글이 총 1건 있습니다.

숫자 placeholder(:1, :2 등)는 의미 없습니다. 인자의 숫자만큼 USING 절에 변수를 적어주세요.


ex)

OPEN rec FOR 'select :a, :b, :c, :d from tbl' USING p_1, p_2, p_3, p_4;

류신(kurishin)님이 2024-04-23 12:57에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
41988ora 1008에러가 나는데 도움좀 부탁드립니다 [1]
2024-04-19
209
41987통계자료 쿼리 작성 가능할까요? [1]
이은정
2024-04-04
158
41986테이블간 relational 관계를 SQL로 추출이 가능할까요? [1]
빵빵이
2024-03-07
180
41985이번에도 쿼리 좀 도와 주세요. [1]
서주희
2024-02-26
203
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.028초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다