Oracle(七)--> PL/SQL 流程及要点(描述清晰 and 多图)
来源:互联网 发布:ubuntu恢复出厂 命令 编辑:程序博客网 时间:2024/06/16 15:51
(营养早餐~~ =。=)
一、PL/SQL 所包含的内容
1、plsql 基本的语法格式
2、记录类型 type ... is record ( , , , );
3、流程控制
3.1 条件判断(两种)
方式一: id ... then elseif then ... else ... endid;
方式二: case ... when ... then ... end;
3.2 循环结构(三种)
方式一:loop ... exit when ... end loop;
方式二:while ... loop ... end loop;
方式三:for i in ... loop ... end loop;
3.3 goto、exit
4、游标的使用(类似于 Java 中的 Interator)
5、异常处理(三种方式)
6、能够完成一个存储函数(Function)[有返回值],存储过程[没有返回值]
7、能够完成一个触发器
简单赋值:
记录类型
复杂的记录类型
二、使用 %TYPE
定义一个变量,其数据类型与已经定义的某个数据变量的类型相同,或者与数据库的某个列的数据类型相同,这时可以使用 %TYPE。
使用 %type 的优点:
-- 所引用的数据库中的列的个数和数据类型可以不必知道
-- 所引用的数据库中的列的个数和数据类型可以实时改变
三、使用 %ROWTYPE
PL/SQL 提供 %ROWTYPE 操作符,返回一个记录类型,其数据类型和数据库表的数据结构一致。
使用 %ROWTYPE 的优点:
-- 所引用的数据库中的列的个数和数据类型可以不必知道
-- 所引用的数据库中的列的个数和数据类型可以实时改变
例1:
例2:
四、需要注意的 N 个地方
4.1 注意使用记录类型和不使用记录类型时的格式(逗号,分号的位置等)
4.2 输出语句为:dbms_output.put_line();
4.3 使用 SELECT 语句对记录变量进行赋值,只要保证记录字段与查询结果列表中的字段相匹配即可
4.4 不能将 SELECT 语句中的列赋值给布尔类型
4.5 运算符和表达式(数据定义)
关系运算符
一般运算符
运算符 意义
+ 加号
- 减号
* 乘号
/ 除号
:= 赋值号
=> 关系号(游标参数的赋值)
.. 范围运算符
|| 字符连接符
逻辑运算符
4.6 变量赋值
在 PL/SQL 编程中,变量赋值是一个值得注意的地方,语法如下:
variable := expression;
variable 是一个 PL/SQL 变量,expression 是一个 PL/SQL 表达式
1)字符及数字运算特点
-- 空值加数字仍是控制:NULL + <数字> = NULL
空值加(连接)字符,结果为字符:NULL || <字符串> = <字符串>
2)BOOLEAN 赋值
-- 布尔值只有 ture 、false 及 null 三个值
3)数据库赋值
-- 数据库赋值是通过 SELECT 语句来完成的,每次执行 SELECT 语句就赋值一次,一般要求赋值的变量和 SELECT 的列名要一一对应。
4.7 可转换的类型赋值
·char 转换为 number
使用 to_number 函数来完成字符到数字的转换,如:
v_total := to_number('100.0') + sal;
·numebr 转换为 char
使用 to_char 函数可以实现数字到字符的转换,如:
v_comm := to_char('123.45')||'元'
·字符转换为日期:
使用 to_date 函数可以实现字符到日期的转换,如:
v_date := to_date('2015.8.31' , 'yyyy.mm.dd');
·日期转换为字符:
使用 to_char 函数可以实现日期到字符的转换,如:
v_to_day := to_char(SYSDATE , 'yyyy.mm.dd hh24:mi:ss');
0 0
- Oracle(七)--> PL/SQL 流程及要点(描述清晰 and 多图)
- Oracle(八)PL/SQL 流程控制(多图高清~)
- Oracle读书笔记-----PL/SQL编程(二)之程序流程
- oracle学习笔记--pl/sql编程(流程控制)
- Oracle(六)--> PL/SQL 开篇(PL/SQL 的概念及代码)
- pl/sql编程(七) 判断
- Oracle笔记 七、PL/SQL 异常处理
- Oracle笔记 七、PL/SQL 异常处理
- Oracle笔记 七、PL/SQL 异常处理
- Oracle笔记 七、PL/SQL 异常处理
- Oracle笔记 七、PL/SQL 异常处理
- ORACLE PL/SQL编程详解之七
- PL/SQL学习(流程控制结构)
- ORACLE PL/SQL编程之PL/SQL 流程控制语句
- Oracle:PL/SQL--流程控制(三)——循环结构:loop、while-loop、for-loop
- 【初识Oracle】⑦PL/SQL控制流程
- Oracle,day6,PL/SQL流程控制
- PL/SQL编程要点
- c# 调用c++ && c++调用c# 函数
- 对ckeditor的面板上的配置修改
- run configuration 中找不到项目解决方法
- longest-common-prefix
- Java代码基础
- Oracle(七)--> PL/SQL 流程及要点(描述清晰 and 多图)
- http解析中的一些东西,strpbrk,strcasecmp,strncasecmp,strspn,strcspn
- LeetCode 258----Add Digits
- Xcode报错:loaded the "INY-Ym-jyd-view-lgW-0n-hka" nib but didn't get a UITableView
- 2015-09-11,随笔,数字格式化
- 归并排序
- 推荐:安卓apk的签名加密
- [leetcode]Delete Duplicate Emails
- 谈游戏服务端开发(2 )