1.基本的PL/SQL代码块如下所示:
DECLARE
/* Declarative section - PL/SQL variables, types, cursors,
and local subprograms go here. */
BEGIN
/* Executable section - procedural and SQL statements go here.
This is the main section of the block and the only one
that is required. */
EXCEPTION
/* Exception-handling section - error-handling statements go
here. */
END;
2.循环结构
DECLARE
v_LoopCounter BINARY_INTEGER := 1;
BEGIN
LOOP
INSERT INTO temp_table (num_col) VALUES (v_LoopCounter);
v_LoopCounter := v_LoopCounter + 1;
EXIT WHEN v_LoopCounter > 50;
END LOOP;
END;
3.存储过程
示例
CREATE OR REPLACE PROCEDURE PrintStudents(
p_Major IN students.major%TYPE) AS
CURSOR c_Students IS
SELECT first_name, last_name
FROM students
WHERE major = p_Major;
BEGIN
FOR v_StudentRec IN c_Students LOOP
DBMS_OUTPUT.PUT_LINE(v_StudentRec.first_name || ' ' || v_StudentRec.last_name);
END LOOP;
END;
调用
BEGIN
PrintStudents('Computer Science');
END;
4.程序包
CREATE OR REPLACE PACKAGE RoomsPkg AS
PROCEDURE NewRoom(p_Building rooms.building%TYPE,
p_RoomNum rooms.room_number%TYPE,
p_NumSeats rooms.number_seats%TYPE,
p_Description rooms.description%TYPE);
PROCEDURE DeleteRoom(p_RoomID IN rooms.room_id%TYPE);
END RoomsPkg;
CREATE OR REPLACE PACKAGE BODY RoomsPkg AS
PROCEDURE NewRoom(p_Building rooms.building%TYPE,
p_RoomNum rooms.room_number%TYPE,
p_NumSeats rooms.number_seats%TYPE,
p_Description rooms.description%TYPE) IS
BEGIN
INSERT INTO rooms
(room_id, building, room_number, number_seats, description)
VALUES (room_sequence.NEXTVAL, p_Building, p_RoomNum, p_NumSeats,
p_Description);
END NewRoom;
PROCEDURE DeleteRoom(p_RoomID IN rooms.room_id%TYPE) IS
BEGIN
DELETE FROM rooms WHERE room_id = p_RoomID;
END DeleteRoom;
END RoomsPkg;
5.执行动态SQL
(需要Oracle8i或更高的版本)
CREATE OR REPLACE PROCEDURE DropTable(p_Table IN VARCHAR2) AS
v_SQLString VARCHAR2(100);
BEGIN
-- Build the string based on the input parameter.
v_SQLString := 'DROP TABLE ' || p_Table;
EXECUTE IMMEDIATE v_SQLString;
END DropTable;
分享到:
相关推荐
### PL/SQL基础编程知识点详解 #### 一、PL/SQL概述 PL/SQL,全称为Procedural Language for SQL,是Oracle数据库特有的高级程序设计语言。它结合了SQL的数据处理能力和传统编程语言的控制结构,使开发者能够在...
1. **PL/SQL基础**:手册可能会从基础开始,介绍PL/SQL的基本结构,包括声明变量、常量、游标、记录类型等。还会讲解如何编写存储过程、函数和触发器。 2. **控制流程语句**:这包括条件判断(IF-THEN-ELSIF-ELSE)...
#### PL/SQL基础知识概览 **标题与描述**:本文档围绕“Oracle 9i PL/SQL程序设计笔记”这一核心主题,深入探讨了PL/SQL语言的基础知识及其在Oracle 9i数据库环境中的应用。 **关键词**:Oracle 9i、PL/SQL #### ...
### PL/SQL基础教程知识点概览 #### 一、PL/SQL程序设计简介与SQL的关系 **1.1 PL/SQL定义与好处** PL/SQL(Procedure Language for SQL)是Oracle数据库的一种内置过程化编程语言,它将SQL的查询功能与传统编程...
而PL/SQL则是在SQL基础上添加了流程控制、异常处理、子程序等面向过程的编程特性,使其更适用于开发复杂的业务逻辑。 **§1.2.1 什么是PL/SQL?** PL/SQL是一种结构化编程语言,它允许开发者编写一系列的SQL语句,...
pl/sql基础知识ppt
### PL/SQL编程基础知识 #### 一、PL/SQL简介 PL/SQL(Procedural Language for SQL)是一种过程化语言,它结合了SQL的数据操纵功能和过程化语言的控制结构,使用户能够灵活地控制数据操作流程。作为Oracle数据库...
本文将讲述 PL/SQL 基础语法、结构和组件、以及如何设计并执行一个 PL/SQL 程序。 PL/SQL 的优点包括: * 高性能的基于事务处理的语言,能运行在任何 ORACLE 环境中,支持所有数据处理命令。 * 支持所有 SQL 数据...
1. **PL/SQL基础**:PL/SQL的基础语法,如变量声明、数据类型、流程控制语句(如IF-THEN-ELSIF,FOR循环,WHILE循环)、异常处理(BEGIN-EXCEPTION-END结构)等。 2. **函数与过程**:如何定义和调用用户自定义的...
1. **PL/SQL基础**:涵盖PL/SQL的基本语法,包括变量声明、常量定义、条件语句(IF-THEN-ELSIF-ELSE)、循环结构(WHILE, FOR)、异常处理(BEGIN-EXCEPTION-END)以及子程序(PROCEDURE和FUNCTION)的创建与调用。...
PL/SQL的基础部分是了解和使用Oracle数据库的关键,它包括以下几个主要方面: 1. **基本语法**:PL/SQL由声明部分、执行部分和异常处理部分组成。声明部分用于定义变量、游标、常量等;执行部分包含SQL语句和PL/SQL...
本篇文章主要探讨PL/SQL的基础知识,包括其结构、变量、条件判断、循环以及异常处理。 PL/SQL块是PL/SQL的基本组成单元,它由声明部分、执行部分和异常处理部分组成。声明部分用于定义变量和常量;执行部分包含SQL...
1. **PL/SQL基础知识**: - PL/SQL结构:了解块的概念,包括声明部分、执行部分和异常处理部分。 - 数据类型:熟悉PL/SQL内置的数据类型,如NUMBER、VARCHAR2、DATE等。 - 变量和常量:声明和使用变量,以及定义...
1. **PL/SQL基础**:介绍PL/SQL的基本语法,包括变量声明、常量定义、条件判断语句(IF-THEN-ELSIF-ELSE)、循环结构(WHILE、FOR)、异常处理(BEGIN-EXCEPTION-END)等,以及如何编写存储过程、函数和触发器。...
1、PL/SQL简介 2、PL/SQL基础 3、记录和表 4、在PL/SQL中使用SQL 5、内置SQL函数 6、游标 7、过程和函数 ...
PL/SQL变量的声明和使用是编程的基础,涉及到变量的声明、初始化、数据类型、%type属性等。变量的赋值和使用也是需要掌握的内容。 此外,书中还涉及到了ORACLE数据库的安装、存储过程的编写、序列操作、数据类型...