Oracle PL/SQL数值函数详解
需积分: 50 147 浏览量
更新于2024-08-07
收藏 1.1MB PDF 举报
"ORACLE PL/SQ 自己做的笔记"
这篇笔记主要涵盖了ORACLE PL/SQL编程中的多个重要概念和功能,包括数值函数、触发器、过程、函数、软件包、异常处理、数据类型以及查询操作等。以下是这些知识点的详细说明:
1. **数值函数**:
- **四舍五入**:`round()` 函数用于进行四舍五入操作,例如 `round(78915.67)` 返回 78916,如果未指定保留小数位,则默认不保留小数。
- **截取小数**:`trunc()` 函数用于去掉小数部分,例如 `trunc(78915.67)` 返回 78915。
- **求余数**:`mod()` 函数计算两个数相除后的余数,如 `mod(10,3)` 返回 1。
2. **触发器**:
- **创建语法**:触发器是基于特定数据库事件(如INSERT, UPDATE, DELETE)自动执行的PL/SQL代码。
- **分类**:包括行级和语句级触发器。
- **:old 和 :new**:这两个伪记录用于访问触发事件前后的行数据。
- **设计触发器的情况**:通常用于实现复杂的业务规则和完整性约束。
3. **过程**:
- **匿名程序块**:无名称的PL/SQL代码块,可以直接执行。
- **参数模式**:IN、OUT、IN OUT分别表示输入、输出和输入输出参数。
- **创建和删除过程**:涉及CREATE PROCEDURE和DROP PROCEDURE语句。
4. **函数**:
- **函数概述**:函数是返回特定值的PL/SQL代码块,常用于计算或处理数据。
- **创建函数语法**:涉及CREATE FUNCTION语句,并定义返回类型和参数。
5. **PL/SQL软件包**:
- **组成部分**:包括包规范(声明部分)和包体(实现部分)。
- **创建包**:用于组织相关的过程、函数和变量。
6. **异常处理**:
- **异常类型**:分为预定义和用户自定义异常。
- **捕获异常**:通过EXCEPTION部分来捕获并处理错误。
- **raise_application_error**:自定义错误并抛出。
7. **数据类型**:
- **记录类型**:自定义的复杂数据类型,可以包含多个字段。
- `%ROWTYPE`:用于创建与表结构相同的数据类型。
- **INDEX BY表**:类似关联数组的数据结构。
8. **游标**:
- **隐式游标**:在DML操作中自动使用的游标。
- **显示游标**:允许手动控制的游标,用于逐行处理查询结果。
- **FOR循环**:简化游标遍历的语法。
9. **循环语句**:
- **loop, while, for**:三种不同的循环结构,满足不同逻辑需求。
10. **分支条件语句**:
- **CASE表达式**:根据条件选择不同的值。
- **if-then, if-then-else, if-then-elsif-else**:提供条件控制逻辑。
11. **变量**:
- **声明和初始化**:定义变量并赋予初始值。
- **数据类型**:包括数值、字符串、日期等多种类型。
- **%type属性**:使变量与列数据类型保持一致。
12. **其他概念**:
- **序列操作**:用于生成唯一序列号。
- **数据类型转换**:将数据从一种类型转换为另一种。
- **合并查询**:MERGE语句用于更新或插入数据。
- **约束**:确保数据的完整性和一致性。
- **索引**:提高查询性能的数据库结构。
- **子查询**:嵌套查询,用于获取所需信息。
- **分页**:在查询结果中实现分页显示。
这些知识点构成了ORACLE PL/SQL编程的基础,对于数据库管理和应用程序开发至关重要。通过学习和掌握这些内容,开发者可以编写出高效、健壮的数据库解决方案。
2012-10-02 上传
2016-07-18 上传
2023-11-10 上传
2023-03-22 上传
2024-05-10 上传
2023-03-22 上传
2023-05-18 上传
2023-05-30 上传
2023-06-06 上传
![](https://profile-avatar.csdnimg.cn/973d12569ff8436fa2d4d8a98b238fbe_weixin_26712075.jpg!1)
赵guo栋
- 粉丝: 41
- 资源: 3901
最新资源
- Hadoop生态系统与MapReduce详解
- MDS系列三相整流桥模块技术规格与特性
- MFC编程:指针与句柄获取全面解析
- LM06:多模4G高速数据模块,支持GSM至TD-LTE
- 使用Gradle与Nexus构建私有仓库
- JAVA编程规范指南:命名规则与文件样式
- EMC VNX5500 存储系统日常维护指南
- 大数据驱动的互联网用户体验深度管理策略
- 改进型Booth算法:32位浮点阵列乘法器的高速设计与算法比较
- H3CNE网络认证重点知识整理
- Linux环境下MongoDB的详细安装教程
- 压缩文法的等价变换与多余规则删除
- BRMS入门指南:JBOSS安装与基础操作详解
- Win7环境下Android开发环境配置全攻略
- SHT10 C语言程序与LCD1602显示实例及精度校准
- 反垃圾邮件技术:现状与前景