过程中1行的PL/SQL更改值
我不知道臭虫在哪里。我必须写一个程序,其中1个特定行将被更改。每次我吃午饭时,都会写信给我: 错误:程序重命名\u飞行票线路/列:1/65 PLS-00103: 遇到符号“(”时,应出现以下情况之一: :=),@%默认字符符号“:=”已被替换 (“继续过程中1行的PL/SQL更改值,sql,oracle,stored-procedures,plsql,procedure,Sql,Oracle,Stored Procedures,Plsql,Procedure,我不知道臭虫在哪里。我必须写一个程序,其中1个特定行将被更改。每次我吃午饭时,都会写信给我: 错误:程序重命名\u飞行票线路/列:1/65 PLS-00103: 遇到符号“(”时,应出现以下情况之一: :=),@%默认字符符号“:=”已被替换 (“继续 我认为您需要的语法是: create or replace procedure rename_flyticket ( p_code_ticket in integer, p_new_id in varchar2 ) as be
我认为您需要的语法是:
create or replace procedure rename_flyticket (
p_code_ticket in integer,
p_new_id in varchar2
)
as
begin
update flyticket set id = p_new_id where flyticketcode = p_code_ticket;
commit;
end;
/
原始代码的主要问题是数据类型不采用长度/精度。因此VARCHAR2(50)
应该是VARCHAR2
我还为参数添加了IN
关键字(这是未指定时的默认值,但我发现最好明确说明这一点)
create or replace procedure rename_flyticket (
p_code_ticket in integer,
p_new_id in varchar2
)
as
begin
update flyticket set id = p_new_id where flyticketcode = p_code_ticket;
commit;
end;
/