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 3633 게시물 읽기
No. 3633
Re: Re: 프로시저에서는 힌트가 적용되지 않나요?
작성자
travolta
작성일
2001-04-11 09:47
조회수
1,617

우선 답변 감사드립니다.

 

다시 질문드립니다.

 

CREATE OR REPLACE PACKAGE "YOOSUNGTNS"."PKG_NOTICE" AS

TYPE T_CURSOR IS REF CURSOR ;

PROCEDURE SP_GETDATA (A_MEMNO IN NOTICE.MEM_NO%TYPE, A_SEQ IN NOTICE.SEQ%TYPE, IO_CURSOR IN OUT T_CURSOR);

PROCEDURE procNotice_Next (MemNo IN NOTICE.MEM_NO%TYPE, sno IN NUMBER, IO_CURSOR IN OUT T_CURSOR);

END PKG_NOTICE;

 

패키지 선언부에 위와같이 선언하고 패키지 몸체에

 

CREATE OR REPLACE PACKAGE BODY "YOOSUNGTNS"."PKG_NOTICE" AS

PROCEDURE SP_LIST (TOP_SEARCH IN NUMBER, A_MEMNO IN NOTICE.MEM_NO%TYPE, IO_CURSOR IN OUT T_CURSOR)

IS

V_CURSOR T_CURSOR;

BEGIN

OPEN V_CURSOR FOR

SELECT /*+index_desc(notice, notice_pk)*/

MEM_NO, SEQ, TITLE, CONTENT, IMPORTANT_VALUE, VISITED, IN_DATE

FROM NOTICE

WHERE TO_CHAR(SYSDATE,'YYYYMMDD')

BETWEEN TO_CHAR(RUNNING_FROM,'YYYYMMDD')

AND TO_CHAR(RUNNING_TO,'YYYYMMDD')

AND MEM_NO = A_MEMNO

AND ROWNUM <= TOP_SEARCH

ORDER BY IN_DATE DESC;

--커서를 리턴한다.

IO_CURSOR := V_CURSOR;

END SP_LIST;

END PKG_NOTICE;

 

위와 같이 선언하여 사용하고 있습니다.

혹시 리턴 되는 형식이 TYPE T_CURSOR IS REF CURSOR 로 정의되어 그러는 것이 아닌가 하는 생각을 해봅니다.

 

그리고 지적해주신 힌트문법도 바꿔서 해 보았지만 똑같습니다.

 

다시한번 답변 부탁드립니다.

 

즐겁고 행복한 하루되시길...

 

>>firebird 님께서 쓰시길<<

 

:: 프로시져에서도 힌트 사용가능합니다.

:: 프로시져이기 때문에 그런것 같지는 않군요.

:: 그리고 아래 힌트 문법에서 컴마가 없는게 맞습니다.

::

:: >>travolta 님께서 쓰시길<<

::

:: :: 직접 쿼리하면 힌트가 먹혀 레코드가 나오는데

:: :: 프로시저로 하면 힌트가 먹질 않네요.

:: ::

:: :: 프로시저에서는 힌트적용이 안되나요?

:: ::

:: :: select /*+index_desc(notice,notice_pk)*/ mem_no, seq, title

:: :: from Notice where seq < sno and mem_no=MemNo

:: :: and rownum = 1 and to_char(sysdate,'YYYYMMDD') BETWEEN to_char(running_from,'YYYYMMDD') AND

:: to

:: :: _char(running_to,'YYYYMMDD')

:: :: order by seq;

:: ::

:: :: sno와 memno를 파라메터로 받아서 실행하는 쿼리문입니다.

:: :: 답변 부탁드립니다.

[Top]
No.
제목
작성자
작성일
조회
3617php 실행중 다음과 같은 에러 발생..
급한사람
2001-04-10
1255
3621┕>Re: php 실행중 다음과 같은 에러 발생..
정재익
2001-04-10 20:32:23
1351
3616오라클에서sql2000 서버쓰기가...
윤동만
2001-04-10
1186
3614"make -f demo_proc.mk sample1"은 어떻게 컴파일 합니까?
김봉섭
2001-04-10
1381
3627┕>Re: 컴파일 됩니다.
firebird
2001-04-10 22:47:29
1398
3630 ┕>[추가질문]make 실행시
왕초보
2001-04-11 00:59:31
1384
3632  ┕>[해결] 아하~ build를 붙여야 되는 군요. 이걸로 하룻밤을 새웠네요..
김봉섭
2001-04-11 09:34:12
1281
3613프로시저에서는 힌트가 적용되지 않나요?
travolta
2001-04-10
1214
3624┕>Re: 프로시저에서는 힌트가 적용되지 않나요?
firebird
2001-04-10 22:33:11
1443
3633 ┕>Re: Re: 프로시저에서는 힌트가 적용되지 않나요?
travolta
2001-04-11 09:47:26
1617
3661  ┕>Re: Re: Re: 프로시저에서는 힌트가 적용되지 않나요?
firebird
2001-04-13 01:11:24
1585
3612long형에 글이 왜 안들어갈까요?
cscript
2001-04-10
1051
3628┕>Re: long형에 글이 왜 안들어갈까요?
firebird
2001-04-10 22:53:44
1675
3607oracle 에서 필드 삭제....??
정용현
2001-04-10
1295
3609┕>Re: oracle 에서 필드 삭제....??
김낙형
2001-04-10 12:36:40
1414
3604리눅스용 오라클 공짜인가요?
바보
2001-04-10
1178
3611┕>Re: 리눅스용 오라클 공짜인가요?
최성준
2001-04-10 13:00:15
1406
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다