我们再来看一下PL/SQL块的执行过程:当PL/SQL运行时引擎处理一块代码时,它使用PL/SQL引擎来执行过程化的代码,而将SQL语句发送给SQL引擎来执行;SQL引擎执行完毕后,将结果再返回给PL/SQL引擎。这种在PL/SQL引擎和SQL引擎之间的交互,称为上下文交换(context swit
如果有一个数据库对象的编译使用了另一个对象的元数据信息,两个对象间就存在了依赖关系。如果被依赖对象发生了元数据信息一旦发生变更(元数据变更发生,即产生了DDL操作),依赖对象编译信息就失效了。因为PL对象常见的实现逻辑,是封装大量的SQL调用,PL对象调用等,所以一个PL对象会产生大量的依赖对象。当
本文首发于2018年。作者:溧阳,OceanBase高级技术专家。引言PL/SQL(存储过程)是一种程序语言,叫做过程化SQL语言(Procedural Language/SQL),从Ada语言发展而来。PL/SQL是关系数据库对SQL语句的扩展,在普通SQL语句的基础上增加了编程语言的特点,把数据
最近遇到了一个用户写的存储过程的执行结果不符合预期的问题,因为我对 PL 不熟,所以排查问题折腾了半天,浪费了很多时间。这里简单描述一下问题,顺便记录一些 PL 相关的基础知识。问题首先,给大家出一道和存储过程相关的题目,大家可以借此机会,自测一下自己的 PL 水平如何。有个存储过程是这样写的:CR