如何在同一个匿名 pl/sql 块中删除函数和过程?
How do i drop a function and a procedure in the same anonymous pl/sql block?
我有这个程序:
create or replace procedure show_emp
is
cursor c is select name,id_funct,date_emp from emp;
...
还有这个函数:
create or replace FUNCTION raise(cod_ang INTEGER, sum REAL)
RETURN VARCHAR
IS
...
一切都已正确实施。
如何在匿名 pl/sql 块中删除此过程和此函数?
当我尝试时:
begin
drop procedure show_emp;
drop function raise;
end;
我收到这个 error:PLS-00103:在期望以下之一时遇到符号 "DROP":
drop
是一个 DDL
语句,您不能直接在 pl/SQL 中使用它。
就这样
drop procedure show_emp;
drop function raise;
或使用动态SQL执行ddl语句
begin
execute immediate 'drop procedure show_emp';
execute immediate 'drop function raise';
end;
我有这个程序:
create or replace procedure show_emp
is
cursor c is select name,id_funct,date_emp from emp;
...
还有这个函数:
create or replace FUNCTION raise(cod_ang INTEGER, sum REAL)
RETURN VARCHAR
IS
...
一切都已正确实施。
如何在匿名 pl/sql 块中删除此过程和此函数? 当我尝试时:
begin
drop procedure show_emp;
drop function raise;
end;
我收到这个 error:PLS-00103:在期望以下之一时遇到符号 "DROP":
drop
是一个 DDL
语句,您不能直接在 pl/SQL 中使用它。
就这样
drop procedure show_emp;
drop function raise;
或使用动态SQL执行ddl语句
begin
execute immediate 'drop procedure show_emp';
execute immediate 'drop function raise';
end;