oracle入门10
来源:互联网 发布:11选5旋转矩阵公式演示 编辑:程序博客网 时间:2024/05/21 08:50
PL/SQL编程
PL/SQL是oracle的专用语言,它对标准的SQL语言的扩展.SQL语句可以嵌套在PL/SQL语言中,并结合处理语句。
PL/SQL程序结构
使用了程序块的结构组织的代码.最简单的程序块是一种被称为”匿名块”的程序块,匿名块是指不会被oracle存储并且不能够重用程序块。
PL/SQL程序通常包括3部分:Declare部分、exception部分、Begin和end部分.
Begin和end是PL/SQL的必须部分,总是begin开始end结束.
Declare部分包含定义变量、常量和游标等类型的代码.
Begin与end之间可以嵌套begin与end及exception.
//打开服务器的输出
SQL> set serveroutput on;
SQL> begin //开始
2 dbms_output.put_line('Hello World');
3 end;
4 /
//声明一个整型的变量
SQL> declare
2 agenumber(2);
3 begin
4 age:=90;
5 dbms_output.put_line(age);
6 end;
7 /
//声明后直接赋值
SQL> declare
2 agenumber(2) :=90;
3 begin
4 dbms_output.put_line(age);
5 end;
6 /
//捕获异常处理
SQL> declare
2 agenumber(2);
3 begin
4 age:='qwe'
5 ;
6 exception
7 whenothers then
8 dbms_output.put_line('赋值失败');
9 end;
10 /
条件判断语句
有if与case语句
If语句
If语法
If(expression1)thenpl/sql_statement
Else
Pl/sql_statement;
End if;
If(expression1)thenpl/sql_statement
Else if(expression2)
Pl/sql_statement;
Else
Pl/sql_statement;
End if;
Case语句
从oracle9i以后引入
Case<selector>
When <expression1> then pl/sql_statement1;
When <expression2> then pl/sql_statement2;
…….
[else pl/sql_statement;]
End;
//案例
SQL> declare score number(2):=80;
begin
if score>70 thendbms_output.put_line('成绩合格');
end if;
end;
/
SQL> declare score number(2):=80;
begin if score>90 thendbms_output.put_line('成绩合格');
else dbms_output.put_line('成绩不合格');
end if;
end;
/
成绩不合格
SQL> declare scorenumber(2):=8;
begin
case score
when 9 thendbms_output.put_line('成绩优秀');
when 8 thendbms_output.put_line('成绩亮');
end case;
end;
/
循环语句
最基本的循环称为无条件循环,如果没有指定exit语句,循环将无条件执行,这种循环称为死循环,死循环尽量避免。
语法格式如下:
Loop
---statement---
Exitwhen condition
Endloop;
案例:
SQL> declare
i number(2):=1;
begin
loop
dbms_output.put_line(i);
i:=i+1;
exit when i>10;
end loop;
end;
/
While循环
语法:
Whilecondition
Loop
Statement;
End loop;
SQL> declare
i number(2):=1;
begin
while i<10
loop dbms_output.put_line(i);
i:=i+1;
end loop;
end;
/
For循环
Forloop_control_variable in [reverse] lower upper loop
Statement;
End loop;
SQL> begin
for i in 1..10
loop
dbms_output.put_line(i);
end loop;
end;
/
集合操作
存储过程
触发器
- oracle 10g 入门
- oracle入门10
- oracle入门10
- oracle入门10
- 10-Oracle入门之子查询
- Oracle入门
- oracle入门
- oracle入门
- Oracle入门
- oracle入门
- oracle入门
- oracle入门
- oracle入门
- oracle入门
- oracle 入门
- Oracle入门
- oracle入门
- oracle入门
- oracle入门08
- 进入Policy Control的领域
- oracle入门09
- ubuntu 硬盘安装图解
- ubuntu软件介绍
- oracle入门10
- oracle入门11
- OpenSuSE安装飞鸽传书小结【同步于我的CU博客】
- 快速排序算法
- oracle入门12
- 学习数据结构stack时出现stack.exe一停止工作的错误的处理
- oracle02
- Oracle分页查询语句
- 常量引用型形参躲避模板类型参数精确匹配