패키지를 반드시 써야하는지?? 수정 될 경우...
397
6 câu hỏi đã được viết
안녕하세요. 강의 감사히 잘 듣고 있습니다.~
질문 내용은,
패키지에 작성된 함수와 프로시져는
이미 생성된 함수와 프로시져와 같은 것인데
다시 패키지에 등록해서 쓰는 게 일반적인 것인지
아니면 상황에 맞게 패키지에 등록 안 하고 함수 프로시져를 따로 쓰는 것인지
패키지에 등록을 한다면 함수나 프로시져가 수정될 때
패키지에 등록된 같은 함수&프로시져도 수정해야하는 것인지 이해가 안갑니다...
정리하자면 ,,
1..함수 등록,, 프로시져 등록, 완성 -->> 함수와 프로시져를 패키지에 등록하여 패키지로 호출하여 사용
2.. 패키지에 반드시 등록하여 써줘야 한다??
3.. 2번일 경우 함수& 프로시져가 수정됨 -->> 패키지에 등록한 함수&프로시져도 같이 수정해줘야 한다?..
Câu trả lời 2
1
안녕하세요.
질문의 내용을 보니 제가 설명하면서 조금 더 부연설명을 했으면 좋았을거라는 생각이 드네요.
답변드려 보겠습니다.
1.함수 등록,, 프로시져 등록, 완성 -->> 함수와 프로시져를 패키지에 등록하여 패키지로 호출하여 사용
-> 펑션, 프로시저, 패키지는 각각의 독립된 객체와 같습니다.
일반적으로 펑선, 프로시저는 전체 시스템, 전체 PL/SQL 에서 공통으로 사용할때 선언해서 사용합니다.
패키지는 특정 프로세스에 대해 필요한 기능을 모아서 사용할때 패키지를 선언하고 그 안에 펑션, 프로시저를
사용하는 편입니다.
2.패키지에 반드시 등록하여 써줘야 한다??
-> 그렇지 않습니다.
위에 설명한대로 각 객체의 성격에 맞게 선언하여 사용하면 됩니다.
3.2번일 경우 함수& 프로시져가 수정됨 -->> 패키지에 등록한 함수&프로시져도 같이 수정해줘야 한다?..
-> 2번이 아니라고 했으니까 이부분은 넘어가구요.
혹시 혼란이 있을 것 같아 추가적으로 부연 설명 드립니다.
예를 들어
1. Function f_get_name()
2. Package P_COMM 패키지 안에 f_get_name() 펑션이 있다면
위 두개의 펑션 이름은 같습니다.
하지만, 저 두개의 펑션은 각각 독립적인 펑션입니다.
1번의 펑션은 f_get_name() 으로 사용하고
2번의 패키지내 펑션은 P_COMM.f_get_name() 으로 사용 됩니다.
펑션의 이름이 둘다 같아서 오해의 소지가 있기에 보통은 동일한 이름의 펑션은 패키지 내부에 있더라도 피하는게 올바른 작성법 입니다.
제가 질문하신 부분에 맞게 답변을 했는지 모르겠네요.
추가적으로 질문 있으시면 언제든지 올려주세요.
[과제] 퍼널 쿼리 PIVOT 테이블 작성
0
11
1
인덱스 관리 기준관하여
0
12
2
다른 디비관련
0
15
2
추가 연습 문제 링크 주세요
0
22
0
용어 사전
0
34
2
개념적 모델링 - 실습
0
29
1
DB 설계와 JPA 관련 질문입니다
0
26
1
21c 버전으로 해도 무방한가요?
0
33
3
vercel실행 - failed to fetch
0
31
2
드랍 테이블로 지운 ordes에 대해서 질문
0
29
1
문제 풀이 1번 질문
0
34
1
아주 작은 정오표 전달드립니다.
0
62
2
DECLARE 오류
0
125
2
commit시점은 어떻게 되나요?
1
248
3
트랜잭션 처리의 주체는 누가 될 것인가 에 대해서 궁금합니다.
1
130
2
PL/SQL을 사용하면 어떤 장점이 있나요?
1
251
2
Oracle 11g에서의 association 활용
1
187
1
SQL Developer 프로그램 사용 팁 질문 드립니다.
0
662
2
7-3 Explicit Cursor (명시적커서, 사용자정의커서) 질문 있습니다.
1
272
1
11gR2 에서 REAL_ORD 테이블 생성시 DEFAULT 시퀀스 문제
0
537
2
real_ord 테이블 포렌키 에러 문의
1
357
1
real_ord 테이블 행 문의 드립니다
0
243
1
11g
0
369
1
테이블 및 컬럼 설명 관련 문의
1
395
1

