函数的逻辑读成零

drop table t;
CREATE TABLE T AS SELECT * FROM DBA_OBJECTS;


CREATE OR REPLACE FUNCTION F_NO_RESULT_CACHE RETURN NUMBER AS
V_RETURN NUMBER;
BEGIN
SELECT COUNT(*) INTO V_RETURN FROM T;
RETURN V_RETURN;
END;
/


set autotrace on statistics

SELECT F_NO_RESULT_CACHE FROM DUAL;
--看调用F_NO_RESULT_CACHE执行第2次后的结果
SELECT F_NO_RESULT_CACHE FROM DUAL;



CREATE OR REPLACE FUNCTION F_RESULT_CACHE RETURN NUMBER RESULT_CACHE AS
 V_RETURN NUMBER;
 BEGIN
 SELECT COUNT(*) INTO V_RETURN FROM T;
 RETURN V_RETURN;
 END;
/


SELECT F_RESULT_CACHE FROM DUAL;
--看调用F_RESULT_CACHE执行第2次后的结果
SELECT F_RESULT_CACHE FROM DUAL;

 

 

相关文章:

  • 2021-04-09
  • 2021-07-25
  • 2021-08-28
  • 2021-11-25
  • 2021-08-05
  • 2022-12-23
  • 2021-08-04
  • 2021-09-10
猜你喜欢
  • 2021-11-04
  • 2021-09-02
  • 2021-09-13
  • 2021-09-15
  • 2021-10-18
  • 2022-12-23
相关资源
相似解决方案