文档详情

《DB2存储过程语法大全》.pdf

发布:2015-12-26约1.03万字共25页下载文档
文本预览下载声明
梦龙博客: Http:///dreamliu001 Click to edit Master title style DB2 Stored Procedure Basic 2 0 0 9 8 月 梦龙博客: Http:///dreamliu001 基础知识体系 存储过程及其类型 SQL Procedure环境配置 SQL Procedure基础原理 SQL Procedure流程控制 SQL Procedure游标 SQL Procedure异常处理 SQL Procedure动态SQL 开发工具-DB2开发中心 结束 梦龙博客: Http:///dreamliu001 存储过程及其类型 什么是存储过程? – 能够通过Call Statement调用的一种应用程序,它作为客户端的扩 展,但运行在服务端。 – 用户自定义的存储过程通过CREATE PROCEDURE语句被注册到 DB2数据库的SYSCAT.ROUTINES表。 梦龙博客: Http:///dreamliu001 存储过程及其类型 为什么用存储过程? 1. 多个SQL语句被调用者一次调用就能全部执行,减少了Client和Server间的 数据传输; 2. 可以将数据库逻辑与应用程序逻辑隔离开; 3. 可以支持多个结果集的返回; 4. 如果被应用程序调用,运行起来SP就像应用程序的一部分。 不足之处: 1. 只能用Call调用,且结果集不能直接被Sql Statement使用。 2. 多次调用之间是相互独立的,无法传递信息,即相互之间不能保存调用状 态 3. 存在跨数据库迁移的风险。即不同数据库产品之间存在不兼容性。 梦龙博客: Http:///dreamliu001 存储过程及其类型 存储过程的类型? – Stored Procedure for SQL = SQL Procedure – Stored Procedure for Java Tips: 一般我们常说的存储过程都指SQL Procedure (用SQL PL写的)。 记住:DB2的SQL Procedure需要C/C++编译器环境的支持。 梦龙博客: Http:///dreamliu001 存储过程及其类型 为什么SQL Procedures? – 性能: SQL存储过程高于Java存储过程,因为SQL Procedure的SQL解释、优 化、访问计划等都在Build时创建好了。 SQL Procedure是运行在DB Engine上,减少了网络的负载,效率高,因 为全是SQL,DB2认为SQL存储过程是安全的。 …… – 安全级别: GRANT EXECUTE ON PROCEDURE代替了直接的表特权。 梦龙博客: Http:///dreamliu001 SQL Procedure环境配置 在服务器上安装应用开发客户端 在服务器上安装DB2支持的C/C++编译器 DB2_SQLROUTINE_COMPILER_PATH registry variable DB2_SQLROUTINE_COMPILE_COMMAND registry variable A IX: Windows: – 总是需 配置C/C++编译器配置 如果这个注册变量修改了,实例必须要重启。db2stop / db2start 梦龙博客: Http:///dreamliu001 SQL Procedure环境配置 为什么需要C/C++编译器
显示全部
相似文档