抱歉,这个问题可能很简单,但我只是 PL/SQL 的新手。
我有一个文件,其中第一行是匿名块,下一个过程和文件末尾的一个函数。从函数调用过程,从匿名块调用函数。如何确保首先编译过程和函数,然后编译并执行匿名块?
非常感谢
抱歉,这个问题可能很简单,但我只是 PL/SQL 的新手。
我有一个文件,其中第一行是匿名块,下一个过程和文件末尾的一个函数。从函数调用过程,从匿名块调用函数。如何确保首先编译过程和函数,然后编译并执行匿名块?
非常感谢
您必须拥有一个包含所有这些任意块、过程和函数的 SQL 文件。
您必须首先考虑到 PL/SQL 匿名块永远不会被编译和保存,而是被编译和执行。您没有为这些块指定对象名称,这就是它们被称为匿名的原因。您不能在数据定义模式视图中对您运行的匿名块有任何引用。您可以在数据定义模式视图中获取存储过程和函数的信息,例如user_procedures
、user_objects
等。
第二件要考虑的事情是,当您的大量过程或函数存在依赖关系时,您必须首先尝试编译独立的过程或函数。
步骤如下:
您只需在 SQL 文件中安排代码,使过程在前,函数在后,匿名块在最后。然后,您只需要执行该脚本。