为什么我在Oracle SQL中收到PSL-00103错误?



我试图使一个过程,将插入一行到表在Oracle SQL。然而,当我编写任何类型的过程时,我都找不到一个可靠的理由来解释为什么这个问题存在。

我已经尝试了几次改变语法,但我仍然不知道如何补救这个问题。

错误给出:

第1行错误:PLS-00103:遇到符号")"当期望下列情况之一时:in out table…列长双ref char时间时间戳间隔日期二进制国家字符nchar
第5行错误:PL/SQL: SQL语句被忽略第6行错误:PL/SQL: ORA-00984:列不允许在这里

代码:

create or replace procedure insert_category(
category_name_param in categories.category_name%type)
as
begin
insert into categories (category_id, category_name)
values (category_id, category_name_param);
end;

程序似乎又缺少了一个参数;看看这是否有帮助(I假定在表中存在这样的列;不能确定,因为你没有发布表描述):

create or replace procedure insert_category(
category_name_param in categories.category_name%type,
category_id_param   in categories.category_id%type      --> this
)
as
begin
insert into categories 
(category_id, 
category_name)
values 
(category_id_param,                                   --> this 
category_name_param);
end;

相关内容

  • 没有找到相关文章

最新更新