PL/SQL结构-创新互联
无名块:未命名的程序块
创新互联建站专注于曾都企业网站建设,响应式网站开发,成都做商城网站。曾都网站建设公司,为曾都等地区提供建站服务。全流程按需定制,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务命名块:指过程,函数,包和触发器
定义部分:用于定义变量,常量,游标,触发器,复合数据类型
执行部分:用于实现应用模块功能,包含了要执行的PL/SQL语句和SQL语句
异常处理部分:用于处理执行部分可能出现的运行错误
[DECLARE
... --定义部分]
BEGIN
... --执行部分
[EXCEPTION
... --异常处理部分]
END;
-------------------------------------
DECLARE
a NUMBER;
BEGIN
a:=1+2;
DBMS_OUTPUT.PUT_LINE('1+2='||a);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE('出现异常')
END;
/
条件分支语句:
DECLARE
a1 number := 100;
a2 number := 200;
BEGIN
IF a1>a2 THEN
DBMS_OUTPUT.PUT_LINE('a1 is larger than a2');
ELSIF a1=a2 THEN
DBMS_OUTPUT.PUT_LINE('a1 is equal to a2')
ELSE
DBMS_OUTPUT.PUT_LINE('a1 is smaller than a2');
ENDIF;
END;
/
------------------------------------------------------------------------------------
DECLARE
grade CHAR(1) := 'B';
appraisal VARCHAR2(20);
BEGIN
appraisal :=
CASE grade
WHEN 'A' THEN '优'
WHEN 'B' THEN '良'
WHEN 'C' THEN '中'
WHEN 'D' THEN '及格'
WHEN 'F' THEN '不及格'
ELSE '没有这样的等级'
DBMS_OUTPUT.PUT_LINE('Grade'||grade||'is'||appraisal);
END;
/
循环语句:
DECLARE
total number := 0;
salary number := 1800;
BEGIN
LOOP
total := total + salary;
EXIT WHEN total > 2500
END LOOP;
DBMS_OUTPUT.PUT_LINE('total salary is'||total);
END;
/
----------------------------------------------------------------------------
DECLARE
total number := 0;
salary number := 1800;
BEGIN
WHILE total<2500 LOOP
total := total + salary;
END LOOP;
DBMS_OUTPUT.PUT_LINE('total salary is'||total);
END;
/
---------------------------------------------------------------------------
DELARE
I INTEGER;
BEGIN
FOR I IN REVERSE 1..3 LOOP
DBMS_OUTPUT.PUT_LINE(I);
END LOOP;
END;
/
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
本文标题:PL/SQL结构-创新互联
标题链接:http://ybzwz.com/article/jeocc.html