在AIX Version 5.3中使用Java和PHP技术进行开发(3)
http://tech.ddvip.com 2008年11月13日 社区交流
在 AIX® 中可以开发使用 Java™ 和 PHP 技术的应用程序。在获得使用 PHP 作为基于 Web 的接口平台的好处的同时,您可以使用 Java 编程语言编写核心逻辑(或者重新部署现有的基于 Java 的应用程序)。在本文(系列文章的第 3 部分)中,介绍了如何将第 2 部分中创建的核心应用程序连接到 DB2® 数据库,以便对问卷调查的问题和回答进行存储。

第一个表 survey_response,用于标识单个问卷调查的回答,其中的唯一的 ID(使用连续的数据类型)用于标识每个问卷调查以及需要回答的问题。在这个示例结构中,仅定义了一个字段,即唯一的 ID,数据库将自动生成这个值。您将使用这个唯一的 ID 来标识 survey_response_detail 表中实际问卷调查问题回答的组。您不能在 survey_response_detail 中使用自动递增的字段,因为这个值应该对于一组问题回答是唯一的。因为您在一行中存储一个问题回答,所以每个问题都应该有一个新的 ID,而不是每个问卷调查一个 ID,后者并不是我们想要的。
很显然,这个表目前的格式仅包含一个字段,它看起来根本没什么用处,但是您可以在这个表中存储附加的信息,如回答者的电子邮件地址或者用于不同问卷调查的其他标识信息。
清单 6 中的 Java 类 CreateDB,创建了您所需要的数据库表。
清单 6. 为我们的应用程序创建数据库表import java.sql.*;
public class CreateDB {
public static void main(String[] args) {
Connection conn = null;
try {
Class.forName("com.ibm.db2.jcc.DB2Driver");
conn =
DriverManager.getConnection("jdbc:db2://localhost:50000/SURV
EY",
"db2inst1","surveypw");
Statement s = conn.createStatement ();
s.executeUpdate ("CREATE TABLE survey_response (" +
"responseid int GENERATED ALWAYS AS IDENTITY
PRIMARY KEY" +
")");
s.executeUpdate ("CREATE TABLE survey_response_detail (" +
"responseid int, " +
"question int, " +
"subquestion int, " +
"responsenumeric int," +
"responsestring varchar(40)" +
")");
s.close ();
} catch (Exception ex) {
System.out.println("SQLException: " + ex.getMessage());
}
}
}
来源:ibm 作者:Doug Monroe 责编:豆豆技术应用