DB2 9.7: 在 DB2 9.7 中使用 PL/SQL 匿名块
2009-10-16 00:00:00 来源:WEB开发网核心提示: 清单 2. 示例代码访问示例代码理解匿名块匿名块是能够动态地创建和执行过程代码的 PL/SQL 结构,而不需要以持久化的方式将代码作为数据库对象储存在系统目录中,DB2 9.7: 在 DB2 9.7 中使用 PL/SQL 匿名块(2),匿名块的概念类似于 UNIX shell 脚本,它支持将几个
清单 2. 示例代码
访问示例代码
理解匿名块
匿名块是能够动态地创建和执行过程代码的 PL/SQL 结构,而不需要以持久化的方式将代码作为数据库对象储存在系统目录中。匿名块的概念类似于 UNIX shell 脚本,它支持将几个手动输入的命令合并到一个组,然后作为一个步骤执行。顾名思义,匿名块没有名称,因此不能从其他对象引用它们。尽管匿名块是动态地构建的,但可以轻松地将它们储存为操作系统文件中的脚本,以重复执行。
匿名块是标准的 PL/SQL 块。它们的语法和遵循的规则适用于所有 PL/SQL 块,包括声明、变量范围、执行、异常处理以及 SQL 和 PL/SQL 的使用。
匿名块的编译和执行被合并到一个步骤中,而 PL/SQL 存储过程的定义改变时,在使用它之前必须进行重新定义。这是匿名块与持久化命名数据库对象(比如存储过程和用户定义函数)相比的一个显著优势,因为它缩短了在代码中实现更改和实际执行之间的时间间隔。这个优点让匿名块在诊断问题、原型化和测试过程代码时发挥重要作用,因为这些任务通常需要多个更改-执行过程。
匿名块的另一个好处是它们不需要创建任何依赖项,在创建对象时也不需要任何特权,从而避免在生产环境中出现冲突。匿名块能够灵活地基于简单的选择特权运行任何操作序列,并且允许您在不创建或指向任何现有数据库对象的情况下进行测试。
可以从以下位置执行匿名块:
SQL(例如,在 EXECUTE IMMEDIATE 语句中)
DB2 API,比如 JDBC 和 ODBC
各种 DB2 工具,包括 CLP、CLPPlus、Optim Database Administrator 和 Optim Development Studio
更多精彩
赞助商链接