我有 pl/sql 匿名块,如下所示
declare
v_count pls_integer := 0;
begin
select count(1) from product_component_version
into v_count
where product like '%Enterprise%';
if v_count = 0 then
raise program_error;
end if;
exception
when program_error then
raise_application_error (-20001, 'This is valid for Oracle Enterprise Edition only!');
end;
当我尝试执行上述操作时,出现以下错误
ORA-06550: line 5, column 5:
PL/SQL: ORA-00933: SQL command not properly ended
这只不过是“进入 v_count”声明。
根据我的理解,语法是错误的,当我像下面那样更改该语句时,它工作正常。
select count(1) into v_count
from product_component_version
where product like '%Enterprise%';
我在“Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit”中对此进行了测试。
但是原始脚本在我们所有旧版本的产品中都可用。我想知道旧版 oracle 支持原始脚本中的语法吗?或者你能告诉我任何可以回答我困惑的信息吗?
谢谢,维杰