如果我在pl/sql开发人员中对数据库表执行一个简单的select语句,我会得到一组标准的结果,如我所料.
最近,我从一个恰好从视图中选择的存储过程粘贴了一个查询,并注意到一个事务似乎保持打开状态.PL/SQL开发人员可以使用回滚和提交选项.
对其他开发人员的调查显示,这似乎影响了一些但不影响其他人,这导致我怀疑PL/SQL Developer设置.
为什么会这样呢?视图itelf有一个DBLink到另一个数据库,但我不希望这会产生任何影响.
有什么想法吗?
我正在尝试调试下一个oracle过程:
create or replace PROCEDURE CASE_6_TRANS_2
AS
V_NUM NUMBER(38,0);
BEGIN
SET TRANSACTION ISOLATION LEVEL SERIALIZABLE;
SELECT COUNT(AE.ID) INTO V_NUM FROM AUDIT_EVENT AE WHERE ID=10;
COMMIT; --BREAKPOINT
END CASE_6_TRANS_2;
Run Code Online (Sandbox Code Playgroud)
但是当我想在断点处看到当前事务时,V $ TRANSACTION表为空.
该文件说:
事务在遇到第一个可执行SQL语句时开始.可执行SQL语句是一种SQL语句,它生成对数据库实例的调用,包括DML和DDL语句以及SET TRANSACTION语句.
根据文档 SELECT查询是DML