반응형
Oracle plsql 블록에 삽입된 총 행 수를 세는 방법
데이터베이스에 삽입할 수 있는 개수를 세고 싶습니다.
아래 쿼리는 2개의 행이 업데이트되었음에도 불구하고 1개를 반환합니다.
begin
Insert into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000386,'BB','Branch Budgets','I'));
Insert into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000257,'TIME','Timesheets','I'));
dbms_output.put_line('No Of rows'||sql%Rowcount);
end;
dbms_output.put_line('No Of rows'||sql%Rowcount);
이렇게 하면 마지막 문장으로 업데이트된 총 행 수를 알 수 있습니다.그래서 이런 식으로 삽입문이 10개 있어도 항상 다음과 같은 것을 얻을 수 있습니다.1
~하듯이sql%rowcount
.
다음에 하나씩 두 개의 출력 문을 사용합니다.insert
문을 사용하거나 변수를 사용하여 업데이트된 행 수를 추가한 다음 마지막으로 표시합니다.
declare
v_count integer;
begin
v_count:=0;
Insert into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000386,'BB','Branch Budgets','I');
v_count:= sql%Rowcount;
Insert into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000257,'TIME','Timesheets','I');
v_count:= v_count+ sql%Rowcount;
dbms_output.put_line('No Of rows '||v_count);
commit;
end;
또는 동일한 테이블에 데이터를 삽입하는 경우에는 다음을 조합하여insert
이런 식의 진술.이렇게 하면 2행이 반환됩니다.
begin
INSERT ALL
into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000386,'BB','Branch Budgets','I')
into APPLICATIONS (ID,ALIAS,NAME,STATUS)
values (1000000257,'TIME','Timesheets','I')
SELECT * FROM dual;
dbms_output.put_line('No Of rows '||sql%Rowcount);
commit;
end;
언급URL : https://stackoverflow.com/questions/37563557/oracle-how-to-count-total-number-of-rows-inserted-in-a-plsql-block
반응형
'programing' 카테고리의 다른 글
C의 스택 변수 자동 해제 (0) | 2023.10.10 |
---|---|
adb 내 장치/폰을 찾지 못함(MacOS X) (0) | 2023.10.05 |
woo commerce 신규 사용자 이메일 (0) | 2023.10.05 |
배열을 양 끝에 대해 자르는 관용적인 방법은 무엇입니까? (0) | 2023.10.05 |
cygwin - UNC 공유에 파일 복사 (0) | 2023.10.05 |