PL/SQL编程笔记:数据操作与异常处理

需积分: 46 9 下载量 48 浏览量 更新于2024-10-16 收藏 455KB DOC 举报
PL/SQL是Oracle数据库管理系统中的一种过程化编程语言,它扩展了SQL语句的功能,使得程序员能够更高效地处理数据库操作。本文档是一份PL/SQL个人笔记,由weizhuoren@163.com整理,主要涵盖了PL/SQL的基本概念和常用操作。 首先,我们了解PL/SQL块中的语句结构。在PL/SQL块中,执行的SQL语句有一定的限制。例如,只允许嵌入SELECT(用于检索数据)、DML(如INSERT、UPDATE、DELETE)以及事务控制语句(COMMIT、ROLLBACK、SAVEPOINT),但不允许直接嵌入DDL(CREATE、ALTER、DROP)和DCL(GRANT、REVOKE)语句。这反映了PL/SQL的主要功能在于数据处理,而非数据库结构定义。 1. 数据检索: - 使用标量变量接收数据:在PL/SQL中,可以通过声明标量变量(如`v_ename`和`v_sal`)来接收单行数据的查询结果。通过`SELECT`语句指定查询条件,将数据赋值给这些变量。 - 使用记录变量接收数据:`emp_record_type`类型的`emp_record`变量用于存储查询结果的整个记录,这样可以一次性获取一整条数据。 - 注意事项:在使用`SELECT INTO`时,确保查询只返回一条数据,否则可能导致`no_data_found`或`too_many_rows`异常。此外,避免使用与列名相同的变量名,以防止意外覆盖数据。 2. 数据操纵: - 插入数据:提供了两种方式。一是使用`VALUES`子句,明确指定要插入的值;二是利用子查询,根据已存在的数据动态生成新的记录,然后插入到目标表中。 - 更新数据:PL/SQL支持使用表达式来更新列的值。例如,`UPDATE`语句结合变量,可以根据条件动态修改表中的数据。这里还提到一个使用子查询更新的例子,即根据子查询的结果更新特定行的值。 这份PL/SQL笔记重点强调了如何在PL/SQL环境中有效地执行数据操作,包括单行数据的检索、数据的插入和更新。对于初学者和PL/SQL开发者来说,理解和掌握这些基础操作是进行数据库管理的关键。同时,理解并遵循SQL语句的使用规则和注意事项,能帮助避免潜在的错误和提高代码的可读性。