개발 다이어리: Orcale 저장 프로세스 (1)

1682 단어
프로젝트에서 저장 프로세스를 사용하기 때문에 요 며칠 동안 저장 프로세스에 대한 지식을 간단하게 회고하고 여러분께 공유했습니다.
첫 번째 저장 프로세스 작성
create or replace procedure ky_proc_in_out(para3 in out varchar2) as
  v_name varchar2(20);
begin
  v_name := 'kangyi';
  para3  := v_name;
  dbms_output.put_line('para3:' || para3);
end;

상기 코드가 실현한 기능은 전송 파라미터를'kangyi'로 설정하고 저장 과정의 정의는 크게 세 부분으로 나뉜다.
//1.          
create or replace procedure ky_proc_in_out(para3 in out varchar2) as
//2.      
begin
//3.        
end;

전송된 인삼에 두 가지 유형을 추가해야 한다. 하나는 입력 출력 형식이고 하나는 구체적인 데이터 형식이다. 여기서 입력 출력 유형을 간단하게 소개한다. IN: 기본 형식은 전송 매개 변수로만 사용할 수 있다. 즉, 저장 과정에서 그 값을 부여할 수 없다는 것이다.OUT: 전송 파라미터로만 볼 수 있습니다. 전송 파라미터로 볼 때 저장 과정에서 값을 부여하지 않으면 모두null입니다.IN OUT: 입력 및 출력 매개변수로 사용할 수 있습니다.진정한 인용 전달 매개 변수는 평소 JAVA의 형삼과 차이가 많지 않다.
프로젝트에서 작성된 첫 번째 저장 프로세스
create or replace procedure proc_normalcount(p1 OUT varchar2) as
  --                   
  cursor c_postype is
    select COUNT(NAME)
      from (select TAX_INFO_GD.NAME,
                   TAX_INFO.NSR,
                   TAX_INFO_GD.SH_ID,
                   TAX_INFO.SHXYDM,
                   TAX_INFO_GD.SYLX,
                   TAX_INFO_GD.JDXZ
              FROM TAX_INFO_GD
              LEFT JOIN TAX_INFO
                ON TAX_INFO_GD.NAME = TAX_INFO.NSR
               AND TAX_INFO_GD.SH_ID = TAX_INFO.SHXYDM)
     where NSR is null
       and SHXYDM is null
       AND (SYLX = 1 OR SYLX = 3);
begin
--     
 open c_postype;
--           p1
  fetch c_postype
    into p1;
--      
close c_postype;
end;

상기 저장 프로세스의 주요 해결 수요는 두 번째 표가 첫 번째 표에 이름과 ID가 저장되지 않은 데이터 항목의 수를 찾아내는 것이다

좋은 웹페이지 즐겨찾기