DB2 Stored Procedure Builder 以及 DB2 Development Center for OS/390 and z/OS 所支持的 JDBC 驱动程序
[@more@]本文将描述在 OS/390® 和 z/OS® 平台上使用 DB2 stored procedure builder (SPB) 或 DB2 Development Center (DC) 创建 Java™ 存储过程时,可用的一些 JDBC 驱动程序选项。
DB2 SPB 和 DB2 DC 在下列三种情况下会使用 JDBC 驱动程序:
- 服务器连接。
- Java SQLJ 存储过程的构建过程。
- Java SQLJ 存储过程和 Java JDBC 存储过程的运行时环境,由 WLM SPAS //JAVAENV 语句决定。
图 1. 概述
当使用 DB2 UDB V7.2 中的 SPB 或 DB2 UDB V8.1 中的 DC 时,都要用 Legacy JDBC Driver 作为进行服务器连接和构建 Java 存储过程的构建过程的驱动程序。当使用 DB2 v8.2 中附带的 DC 时,可以选择 legacy JDBC 驱动程序与 Universal JDBC 驱动程序中的任意一种来完成对服务器的连接。当在 DB2 for z/OS V8 服务器上使用 DB2 "Stinger" 中的 DC 来创建 Java 存储过程时,可以选择 legacy JDBC 驱动程序与 Universal JDBC 驱动程序中的任意一种完成创建。
SPB 和 DC 执行的构建过程在使用默认语法 "jdbc:default:connection" 的 Java 存储过程中生成连接。这消除了存储过程源代码中的 JDBC 驱动程序的差异性。实际上,JDBC 驱动程序的差异性体现在定制过程中用于 Java SQLJ 存储过程的 *.ser 文件中。对于 Legacy JDBC 驱动程序,SPB 或 DC 使用 DB2PROFC 来执行定制,对于 Universal JDBC 驱动程序,DC 使用 DB2SQLJCUSTOMIZE 来执行定制。
对于 Java SQLJ 存储过程和 Java JDBC 存储过程,用于运行时的 JDBC 驱动程序都是由 WLM SPAS 中的 //JAVAENV 语句决定的,WLM SPAS 也是执行存储过程的地方。如果指定了 JCC_HOME 环境变量,则使用 Universal JDBC Driver。如果 //JAVAENV 语句中同时包括了 DB2_HOME 和 JCC_HOME,则选择 Legacy JDBC 驱动程序。DB2_HOME 的默认目录结构是 /usr/lpp/db2/db2710。JCC_HOME 的默认目录结构是 /usr/lpp/db2/db2710/jcc。要获得关于 //JAVAENV 语句的更多细节,请参阅 IBM Redbook(手册编号 SG24-7083)中的第 17.2.6 节, DB2 for z/OS Stored Procedures: Through the CALL and Beyond。
表 1: 用于服务器连接、构建和运行时的 SPB 和 DC JDBC 驱动程序选项
Legacy driver type 2 connectivity (请参见 Note 1) | Universal driver type 2 connectivity (请参见 Note 2) | Universal driver type 4 connectivity (请参见 Note 2) | |
SPB | |||
-Server connection | Y | - | - |
- Java SQLJ SP build (使用 DSNTJSPP on z/OS) | Y | - | - |
- Runtime for Java JDBC | Y | Y | - |
- Runtime for Java SQLJ (请参见 Note 3) | Y | - | - |
DB2 UDB 8.1 中的 DC | |||
-Server connection | Y | - | - |
- Java SQLJ SP build (使用 DSNTJSPP on z/OS) | Y | - | - |
- Runtime for Java JDBC (请参见 Note 3) | Y | Y | - |
Runtime for SQLJ | Y | - | - |
DB2 "Stinger" 中的 DC | |||
- Server connection | Y | Y | Y |
-Java SQLJ SP build (使用 DSNTJSPP on z/OS) | Y | - | - |
- Java SQLJ SP build (不使用 DSNTJSPP on z/OS) | - | Y (请参见 Note 4) | - |
- Runtime for Java JDBC (请参见 Note 3) | Y | Y | - |
- Runtime for Java SQLJ | Y | Y (请参见 Note 4) | - |
- 需要 DB2 Connect。 只需一个 DB2 Connect 许可。 与 Java SQLJ 存储过程不同,Java JDBC 存储过程在 SPB 或 DC 创建的存储过程中不包括驱动程序的定义,例如,不存在 *.ser 文件,因此可以使用 DB2 提供的存储过程、DSNTJSPP(用在 DB2 for OS/390 V7 上或者 DB2 for z/OS V8 上)或不使用 DSNTJSPP(只用在 DB2 for z/OS V8 上)来创建 Java JDBC 存储过程。Java JDBC 存储过程只能决定在存储过程的 运行时用于该存储过程的驱动程序。如果 Java 存储过程执行时所在的 WLM proc 中有指向 DB2_HOME 的语句,其中 DB2_HOME 的默认目录为 /usr/lpp/db2/db2710,则使用 Legacy JDBC 驱动程序。如果 Java 存储过程执行时所在的 WLM proc 中有指向 JCC_HOME 的语句,其中 JCC_HOME 的默认目录是 /usr/lpp/db2/db2710/jcc,则使用 Universal JDBC 驱动程序。 只适用于 DB2 for z/OS V8,请参阅 IBM Redbook,SG24-7083,第 29.6 节。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/374079/viewspace-930845/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/374079/viewspace-930845/