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;