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 40538 게시물 읽기
No. 40538
PL/SQL 질문입니다.
작성자
김우빈
작성일
2014-07-24 15:41ⓒ
2014-07-24 15:42ⓜ
조회수
6,813

제가 Developer/2000을 사용하여 PL/SQL을 코딩하고 있습니다.

 

한 테이블의 한 아이템이 21개의 레코드로 되어있습니다.

그렇게 21개 레코드로 된 아이템들은 6개가 있구요.

 

PRE-INSERT 트리거를 사용해서 그 안에 코딩을 해야 하는데,

 

근데 이걸 저장할려고 하니깐 seg_no로 해서 6개의 아이템의 1첫째 레코드들을 seg_no = 1로 주어 저장하고

다음 2번째 레코드들을 2로 주어 저장하라고 합니다...

21개 레코드 이지만 그전에 끝나서 null값도 있구요.

 

그런데 각 아이템의 first_record 부터 last_record의 레코드마다 키값이 있어야 하는거 아닌가요?ㅠ 근데 레코들을 잡을때 하나로 잡혀서 각각의 레코드들을 잡을수가 없는거 아닙니까?

 

이걸 짤려고 하니깐 예문을 들어줬는데

 

 

declare

vSeq_No number;

vCde varchar2(10);

BEGIN

:Tnr_Plan.Ctno := :NBT_BLK.CTNO ;

:Tnr_Plan.Clnc_Dept_Cde := 'zz';

if get_item_property('TNR_PLAN.KARDEX_CLS', VISIBLE) = 'FALSE' then

:Tnr_Plan.Kardex_Cls := :Global.Frm_ocnre010_Cls;

end if;

 

begin

select /*+ index_desc ( i tnr_plan_pk ) */

nvl(seq_no,0) + 1 into vSeq_No

from tnr_plan i

where i.ctno = :tnr_plan.ctno

and i.ord_date = :tnr_plan.ord_date

and i.clnc_dept_cde = :tnr_plan.clnc_dept_cde

and i.kardex_cls = :tnr_plan.kardex_cls

and rownum = 1;

exception

when others then vSeq_No := 1;

end;

 

:Tnr_Plan.Ctno := :NBT_BLK.CTNO ;

:Tnr_Plan.Seq_No := vSeq_No;

END ;

 

이렇게 하라는데..

 

전 도저히 어떻게 해야 할지 모르겠습니다. 이해가 되셨는지 모르겠지만

꼭 부탁 드립니다.ㅜㅜ

[Top]
No.
제목
작성자
작성일
조회
40541안녕하세요 DB관련해서 처음사용하는 프로그래머입니다.
손정호
2014-07-28
7245
40540차수 구하기 질문 드립니다. [2]
딸기쥬스
2014-07-26
7340
40539고수님들의 조언 부탁드립니다. [2]
일쌍다반사
2014-07-24
7520
40538PL/SQL 질문입니다.
김우빈
2014-07-24
6813
40537PL/SQL 질문 있습니다. [4]
신종민
2014-07-23
6999
40536쿼리 문의 드립니다. [1]
정기훈
2014-07-23
7243
40535connct by 상위 연결 문제 [1]
마당쇠
2014-07-23
7808
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.020초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다