兼容Oracle匿名块
2. 功能说明
-
匿名块是能够动态地创建和执行过程代码的PLSQL结构,而不需要以持久化的方式将代码作为数据库对象储存在系统目录中。本次实现中IvorySQL主要兼容的是PLSQL匿名块的语法格式,我们主要处理的部分包括客户端工具psql、主服务器和PSQL端支持。
3. 测试用例
declare
i integer := 10;
begin
raise notice '%', i;
raise notice '%', main.i;
end;
/
NOTICE: 10
NOTICE: 10
DECLARE
grade CHAR(1);
BEGIN
grade := 'B';
CASE grade
WHEN 'A' THEN raise notice 'Excellent';
WHEN 'B' THEN raise notice 'Very Good';
END CASE;
EXCEPTION
WHEN CASE_NOT_FOUND THEN
raise notice 'No such grade';
END;
/
NOTICE: Very Good