pb execute immediate 执行SQL 怎么判断影响行数
时间: 2023-02-09 21:08:45 浏览: 73
可以使用 `SQL%ROWCOUNT` 来判断 `EXECUTE IMMEDIATE` 语句影响的行数。
例如:
```
declare
l_rowcount integer;
begin
execute immediate 'delete from my_table where id = 1'
into l_rowcount;
dbms_output.put_line('Deleted rows: ' || l_rowcount);
end;
```
在这个例子中,`l_rowcount` 变量会被赋值为 `DELETE` 语句删除的行数。
注意,如果执行的是非查询语句(例如 `INSERT`,`UPDATE` 或 `DELETE`),则 `SQL%ROWCOUNT` 返回的是被修改或删除的行数。如果执行的是查询语句,则 `SQL%ROWCOUNT` 返回的是查询返回的行数。