CREATEORREPLACEFUNCTION"AT"(p1 IN NUMBER,p2 IN NUMBER)RETURN VARCHAR2
ASBEGINDECLARE
res VARCHAR2(500);BEGIN
res :='First Test!';/** if语句 **/IF p1=0THEN res := CONCAT(res,'p1==0;');ELSE res := CONCAT(res,'p1!=0;');ENDIF;/** case...when... 类似于switch语句 **/CASE p1
WHEN0THEN res := CONCAT(res,'p1==0;');ELSE res := CONCAT(res,'p1!=0;');ENDCASE;/** LOOP基本结构,可以不使用别名,使用EXIT结束循环 **/<<loop1>>LOOP--TODO STHEXIT loop1 when1>0;ENDLOOP;/** for循环 **/DECLAREBEGINFOR i IN1..3LOOP--TODO STH
res := CONCAT(res,'');ENDLOOP;END;/** 带参数的循环,EXIT...WHEN...类似于do...while...语句 **/DECLARE
i NUMBER:=0;BEGIN<<loop2>>LOOP
i := i +1;--TODO STHEXIT loop2 when i>3;ENDLOOP;END;/** 使用CONTINUE跳过本次循环 **/DECLARE
i NUMBER:=0;BEGIN<<loop3>>LOOP
i := i +1;IF i<3THENCONTINUE;ELSEEXIT loop3;ENDIF;ENDLOOP;END;/** while...loop...语句,同其它语言的while循环 **/DECLARE
i NUMBER:=0;BEGINWHILE i<3LOOP
i := i +1;--TODO STHENDLOOP;END;RETURN res;END;END;