我正在使用TOAD编写Oracle过程。我使用execute语句执行了该过程。但我无法得到结果。而不仅仅是错误。请帮助如何在TOAD中运行该过程。我是toad和Oracle的新手。
oracle程序
create or replace procedure pro_dndtesting( phone number)is
begin
select FLD_PHONENUMBERS from smsdnd_tbl where FLD_PHONENUMBERS=phone;
end ;
/
执行程序如下
exec procedure pro_dndtesting(9865015695)
error
ORA-06550: line 1, column 7:
PLS-00201: identifier 'PRO_DNDTESTING' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
答案 0 :(得分:5)
只是澄清:没有“Oracle Toad”这样的东西。 Oracle是一个RDBMS,而TOAD是Oracle数据库的客户端。
您的程序将不会编写,因为您没有为SELECT提供INTO子句(因为PL / SQL - 而不是普通的SQL - 需要SELECT的结果的“目标”) ;试试这个:
create or replace procedure pro_dndtesting( phone number)is
l_value smsdnd_tbl.fld_phonenumbers%type;
begin
select FLD_PHONENUMBERS
into l_value
from smsdnd_tbl
where FLD_PHONENUMBERS=phone;
end ;
至于你得到的错误:
您是否使用相同的模式(= user)来定义过程并调用它?
您是否从像
这样的匿名PL / SQL块中尝试过它begin
pro_dndtesting(9865015695);
end;