我想要计算我在数据库中插入的数量
下面的查询返回一(1),虽然2行确实更新
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;
Run Code Online (Sandbox Code Playgroud)
Uts*_*sav 10
dbms_output.put_line('No Of rows'||sql%Rowcount);
Run Code Online (Sandbox Code Playgroud)
这将为您提供最后一个语句更新的总行数.所以,即使你有10个插入语句这样,你总是会得到1的sql%rowcount.
使用2个输出语句,每个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;
Run Code Online (Sandbox Code Playgroud)
或者如果要将数据插入到同一个表中,请使用这样的组合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;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23551 次 |
| 最近记录: |