-1

我是 pl/sql 的初学者,我正在学习。

这是我的桌子。

select * from s;

   SLNO ENAME                       SAL
------ -------------------- ----------
     1 Shiv                       8000
     2 Pankaj                     9000
     3 Prasath                   10000

这是我的程序:

set serveroutput on
create or replace procedure p1(n number)
is wname varchar(20);
begin
select ename into wname from s where eid=n;
dbms_output.put_line('------');
dbms_output.put_line('employee name:='||wname);
dbms_output.put_line('------');
end;

我收到警告:

过程创建时出现编译错误。

如果我执行上述查询。任何人都可以请建议我要去哪里错了..

4

4 回答 4

3

您可以使用以下命令。

show errors procedure procedure_name;

获取错误列表并进行检查。

于 2014-04-23T10:03:09.380 回答
0

您的表 S 上没有名为 EID 的列。

于 2013-06-19T02:25:13.547 回答
0

输入参数类型。给出创建或替换过程 p1(n IN s.eid%TYPE) 之类的过程

它会起作用的。

于 2014-06-24T03:35:07.800 回答
0

我认为您的程序中有错字,请尝试

SET SETVEROUTPUT ON

都在大写字母中。

于 2015-10-18T18:48:09.757 回答