无法在PL / SQL中运行块获取ora-06550和pls-00103

时间:2018-08-03 00:00:25

标签: sql oracle plsql plsqldeveloper

我正在尝试创建匿名块来更新esri的oracle版本视图。当我从pl / sql Developer执行而没有开始/结束时,代码运行良好。但是,一旦添加开始/结束,我就会出错。

begin
call sde.version_util.set_current_version ('ARCFM8.vtemp');
call sde.version_user_ddl.edit_version ('ARCFM8.vtemp', 1);

update arcfm8.t_conductormarker_vw set CEAREFERENCEDRAWING = 'my fisrt multiversion view update'
where OBJECTID = 3;

call sde.version_user_ddl.edit_version ('ARCFM8.vtemp', 2);
end;

enter image description here

1 个答案:

答案 0 :(得分:4)

Call是一个SQL关键字,而不是PLSQL关键字。它可以在匿名块之外运行,但不能在匿名块内运行。 PLSQL将为您解决这个问题,因此您所需要做的就是...

begin
 sde.version_util.set_current_version ('ARCFM8.vtemp');
 sde.version_user_ddl.edit_version ('ARCFM8.vtemp', 1);

 update arcfm8.t_conductormarker_vw set CEAREFERENCEDRAWING = 'my fisrt multiversion view update' where OBJECTID = 3;

 sde.version_user_ddl.edit_version ('ARCFM8.vtemp', 2);
end;