sql属于第三代语言, 也就是说通过该语言能告诉操作者能做什么, 而无法告诉操作者如何做, 也就是屏蔽了系统内部的数据结构和算法
pl sql属于第四代语言, 它通过在sql的基础上引入变量, 控制语句, 过程和函数, 使得它除了sql的功能之外, 还更加灵活.
plsql的大致结构如下:
引用
DECLARE
变量声明
BEGIN
执行代码块
EXCEPTION
异常执行代码块
END
plsql也就是"三段式"的结构(声明, 执行代码快, 异常处理块), 其中只有执行代码块是必须的,其他两个部分是可选的.
pl sql中的变量可以自定义, 一些复杂的数据结构,比如记录类型, 表类型之类的
游标是用来处理使用select语句从数据库中检索到的多行记录的工具, 通过游标可以多一组记录集逐行进行处理, 对数据的统计和分析来说游标非常有用
过程和函数(统称为子程序)是经过编译的程序代码块,二者的区别是, 函数有返回值, 过程没有
为了方便管理, 可以将子程序, 变量以及变量类型组成包, 包包括两部分:说明和包体, 跟jdk有些类似, oralce也提供了一些内置的package, 一般都是以DBMS_打头用来方便在我们的plsql中调用.
一般的程序设计语言的基本单位是语句, 但是plsql的基本单位是语句块, 也就是declare ... begin ... end之间的部分.可以给语句块取一个名字, 也可以没有名字(匿名语句块), declare只是用来提供变量声明的, 如果没有变量声明则可以直接以begin打头.因为代码的执行部分是放在begin...end;(后面必须加分号)之间的.
用户自定义类型, 可以这样理解自定义类型, 自定义类型是基本类型的一个子集, 因此又称之为基本类型的子类型, 如果是基于数据库表中的某个字段的类型,可以这样写:SUBTYPE ID_num IS emp.empno%TYPE, 但是它只能集成列的尺寸约束, 不会集成象not null之类的约束.
在plsql中关于null有几点需要注意:
和包含null的值进行比较, 得到的结果总是null;
将逻辑操作符not应用一个null值上, 其结果也为null;
case...when条件选择语句中如果没有找到匹配的条件, 返回的结果是null, 而且null也不能做为when中的比较结果来进行匹配, 必须使用is null来测试结果;
在if...then...else条件语句中, 如果为false或者null会执行else中的语句;
零长度的字符串被看作null;
在使用||串接字符串时, null将被忽略;
plsql与其他的语言相比, 多了一个goto和null语句, 使用goto有很多限制, 不用多说, null语句表示什么也不做.
161 过程与函数
180 包
package是plsql代码块的一种组织形式, 它分包规范和包体, 只有子程序和游标需要在包体部分定义, 要想包体中定义的子程序和游标在包之外也能使用, 必须在包规范中进行声明
218 游标
游标可以用来增强sql语句的功能, 有时候sql无法搞定的时候, 我们就可以借助游标来对从数据库中取出的表进行处理
对于显式游标的处理可以概括为四个步骤:声明游标,打开游标, 提取游标和关闭游标
245 触发器
...
分享到:
相关推荐
PL/SQL是Oracle公司开发的一种过程化SQL扩展,它是Oracle数据库的重要组成部分,用于在数据库服务器上编写存储过程、函数、触发器、包等可执行...通过学习和掌握PL/SQL,开发者可以构建高效、复杂的数据库应用程序。
以下是对PL/SQL的学习笔记的详细解析: 1. **什么是PL/SQL语言** PL/SQL是Oracle数据库为数据库管理员和开发人员设计的一种编程语言。它扩展了SQL的功能,允许编写包含控制结构、变量、过程和函数的程序段,这些...
Oracle数据库管理员(DBA)的PL/SQL学习笔记主要包括了以下几个知识点: 一、PL/SQL基本的语法格式 PL/SQL是Oracle提供的过程化语言,其基本的语法格式如下: - 声明部分(DECLARE):用于声明变量、常量、游标、...
PL/SQL数据库学习笔记 PL/SQL是一种高级的程序语言,主要用于Oracle数据库管理系统中。下面是PL/SQL数据库学习笔记的知识点总结。 一、基本原则 *瀑布模型:需求分析→设计(概要设计,详细设计:SQL语句,变量...
### PL/SQL学习笔记4 —— 集合与成员函数 #### 一、PL/SQL 表(索引表) 在PL/SQL中,**索引表**(也称为**PL/SQL表**)是一种非常有用的结构,它类似于数组但具有更多的灵活性。这种表是非持久化的,即它们不会...
### PL/SQL 个人笔记详解 #### 一、PL/SQL 块中可嵌入的 SQL 语句类型 PL/SQL(程序化SQL)是Oracle数据库的标准编程语言,它扩展了SQL的功能,允许在数据库环境中编写过程化的业务逻辑。在PL/SQL中,可以嵌入多种...
从给定的Oracle PL-SQL学习笔记中,我们可以提炼出一系列关键的知识点,涉及PL-SQL的基本语法、变量声明与赋值、数据类型、表操作、记录与集合处理等核心概念。下面将对这些知识点进行详细阐述: ### 1. 变量声明与...
在PL/SQL编程中,游标是处理查询结果集的重要工具。它们允许程序逐行处理结果,而不是一次性加载所有数据,这对于大型数据集尤其有用,因为它可以节省内存并提高性能。下面将详细解释游标的基本概念、分类以及如何在...
在这个“我的PL/SQL学习笔记(一)”中,我们将探讨PL/SQL的基础知识,包括其语法结构、变量声明、流程控制以及如何与Oracle数据库中的数据进行交互。 首先,PL/SQL的基本结构分为声明部分、执行部分和异常处理部分...
本篇笔记主要涵盖了PL/SQL的基础语法和常用操作,包括检索数据、操纵数据以及SQL游标的应用。 在PL/SQL块中,可以直接嵌入的数据操作语句包括SELECT、DML(INSERT、UPDATE、DELETE)以及事务控制语句(COMMIT、...
通过学习本书,读者不仅可以掌握oracle常用工具oracle universal installer、net comfiguration assistant、sql developer、sql*plus的作用及使用方法,而且可以掌握sql语句和pl/sql的各种基础知识和高级特征(记录...
在PL/SQL编程中,存储过程和函数是关键的组件,它们允许我们将可重用的代码逻辑存储在数据库中,以便于管理和调用。本文主要探讨了存储过程、函数以及程序包的概念,特点,创建方法,执行方式,权限管理以及参数处理...
本文将深入探讨从"SQL,PL/SQL学习笔记"中提取的关键知识点,帮助编程人员更好地理解和运用这两种语言。 首先,我们关注SQL并行查询。通过`ALTER SESSION ENABLE PARALLEL DMl`,我们可以开启会话的并行DML操作,这...
在学习PL/SQL的过程中,理解这些基本概念和结构是至关重要的。通过实践编写存储过程、函数和触发器,你可以逐渐掌握PL/SQL的强大功能,并利用它来解决实际的数据库编程问题。对于初学者来说,循序渐进、结合实例学习...
在PL/SQL的学习中,分区是数据库管理大型数据集的一种高效方法,特别是在处理大数据量时。本篇笔记主要探讨了何时应该使用分区以及Oracle支持的分区类型。 首先,当面对超过2GB的大数据表时,分区是十分必要的。这...
【JAVA与Sql学习笔记】 在Java编程中,与SQL数据库的交互是不可或缺的一部分。这篇学习笔记主要关注如何在Oracle数据库中使用PL/SQL的FORALL语句进行批量操作,以及如何利用批绑定(Bulk Binding)来提升性能。此外...
在这个“PL/SQL学习资料”压缩包中,包含了十一个PDF文件,覆盖了从基础到进阶的广泛主题。下面我们将详细探讨这些知识点。 1. **PL/SQL基础知识**: - PL/SQL结构:了解块的概念,包括声明部分、执行部分和异常...
### Oracle 9i PL/SQL程序设计笔记精要 #### PL/SQL基础知识概览 **标题与描述**:本文档围绕“Oracle 9i PL/SQL程序设计笔记”这一核心主题,深入探讨了PL/SQL语言的基础知识及其在Oracle 9i数据库环境中的应用。...