Sql 错误:Oracle 10g中的ORA-06550
在这里,我创建了一个包,包含包规范和包体,其中包含一个在表中插入行的过程,包创建成功,但该包的执行给我带来了错误 ORA-06550 包装规格:Sql 错误:Oracle 10g中的ORA-06550,sql,oracle,oracle10g,Sql,Oracle,Oracle10g,在这里,我创建了一个包,包含包规范和包体,其中包含一个在表中插入行的过程,包创建成功,但该包的执行给我带来了错误 ORA-06550 包装规格: create or replace package pkgEmp --package specification created.. as procedure insertEmp(eno number,name varchar2,job varchar2,mgr varchar2,salary number); end pkgEmp; 包体: cre
create or replace package pkgEmp --package specification created..
as
procedure insertEmp(eno number,name varchar2,job varchar2,mgr varchar2,salary number);
end pkgEmp;
包体:
create or replace package body pkgEmp
as
procedure insertEmp(eno number,name varchar2,job varchar2,mgr varchar2,salary number)
is
begin
insert into emp values(eno,name,job,mgr,salary);
end insertEmp;
end pkgEmp;
执行程序insertEmp:
begin
pkgEmp.insertEmp(&eno,&name,&job,&mgr,&salary); --i m trying to get data in run time.
End;
和输出:
ORA-06550: line 2, column 18:
PLS-00103: Encountered the symbol "&" when expecting one of the following:
( ) - + case mod new not null others
table avg count current exists max min prior sql stddev sum
variance execute multiset the both leading trailing forall
merge year month DAY_ hour minute second timezone_hour
timezone_minute timezone_region timezone_abbr time timestamp
interval date
1. begin
2. pkgEmp.insertEmp(&eno,&name,&job,&mgr,&salary);
3. End;
为什么我无法从用户处获取数据,我使用的是SQL*Plus我认为您需要在数据类型为非整数的“单引号”中添加参数,如“&name” 谢谢,
Aditya您的错误是
PLS-00103
,ORA-06550
只是关于您的错误的附加信息(在您的声明中的确切位置)。您如何运行insertEmp
过程?来自SQL*Plus?SQLDeveloper?PL/SQL开发人员?蟾蜍?还有别的吗?@LukeWoodward的SQL*Plus和ORacle 10g Express编辑您是否禁用了define
off?键入show define
查找,如果显示define OFF
,则键入set define on
。然后再试一次。