简介
本教程描述了使用具有ASP.NET 2.0主从复合关系增强的DB2的益处。过去,通过连接两个数据网格来支持主从复合关系通常很困难,但是现在,借助Visual Studio 2005和ASP.NET 2.0,只需使用合适的控件就能构建主从复合关系应用程序。
本教程演示如何在不编写代码的情况下构建主从复合应用程序。不必编写代码,我们使用ASP.NET 2.0中的Grid View和Details View控件构建一个示例应用程序,其功能是显示一个公司特定部门的职员。
为何使用支持ASP.NET 2.0的DB2 9呢?
借助对IBM原生XML的充分支持和对Microsoft的行业主流开发平台.NET的支持,DB2 9引发了数据管理领域新的变革。DB2现在支持许多与.NET相关的特性,这使它成为.NET数据库的最佳搭档。有了这两项强大技术,您只需花很少的时间就可以创建数据驱动web应用程序,从而节约了成本并提高了开发人员生产率。
ASP.NET 2.0拥有的新特性使其非常值得web开发人员去尝试。本教程演示如何使用ASP.NET 2.0的新GridView和DetailsView检索DB2数据库的主从复合数据。
创建表
本教程演示如何使用一些新控件构建基于主从复合结构的应用程序,而只需编写很少代码或者不需编写代码。教程中的例子演示如何创建一个典型HR场景应用程序——创建的应用程序显示特定部门的职员信息。
此场景需要建立两个独立的表——Department表和Employee表。要创建这两个表,可以重用SAMPLE Database,该数据库是DB2 9在安装过程中创建的。
表的结构如清单1和2所示:
代码
清单1:DEPT1表的示例代码
DDL Statements for table "ANILM"."DEPT1"
------------------------------------------------
CREATE TABLE ANILM.DEPT1 (
DEPTNO CHAR (10) NOT NULL,
DNAME VARCHAR (50),
LOCATION VARCHAR (10))
DDL Statements for primary key on Table "ANILM"."DEPT1"
ALTER TABLE ANILM.DEPT1
ADD CONSTRAINT PK_DEPTNO PRIMARY KEY
(DEPTNO);
DDL Statements for foreign keys on Table "ANILM"."EMP1"
ALTER TABLE ANILM.EMP1
ADD CONSTRAINT FK_DEPTNO FOREIGN KEY
(DEPTNO)
REFERENCES ANILM.DEPT1
(DEPTNO)
清单2.EMP1表的示例代码
DDL Statements for table "ANILM"."EMP1"
------------------------------------------------
CREATE TABLE ANILM.EMP1 (
EMPNO CHAR (10) NOT NULL,
ENAME VARCHAR (40),
DEPTNO CHAR (10),
SALARY DECIMAL (10, 2),
EMAIL VARCHAR (50))
DDL Statements for primary key on Table "ANILM"."EMP1"
-------------------------------------------------------------
ALTER TABLE ANILM.EMP1
ADD CONSTRAINT PK_EMPNO PRIMARY KEY
(EMPNO);
请注意:
用各自的模式名称替换ANILM。
现在表已经创建好了,接下来插入一些有效的数据。对于Department表,需要添加4个部门的数据:
在DEPTNO下面,分别添加10、20、30和40。
对于DNAME,输入IT、MKT、FIN和HR
在LOCATION下面,添加BLR、HYD、CHE和DEL
完成后的表应该与表1类似:
表1:Department表
DEPTNO | DNAME | LOCATION |
10 | IT | BLR |
20 | MKT | HYD |
30 | FIN | CHE |
40 | HR | DEL |
对于EMP1表,请确保为职员输入正确的DEPTNO,以维持引用完整性。完成后应该与下表类似:
表2:Employee表
EMP 表
EMPNO | ENAME | DEPTNO | SALARY | |
1 | Anil Mahadev | 10 | 100000 | anilm001@gmail.com |
2 | James Brown | 10 | 10000 | jamesb@gmail.com |
3 | Jane Doe | 20 | 10000 | janed@gmail.com |
4 | Michelle Cooper | 20 | 200000 | michellec@gmail.com |
现在整个数据库基础结构已经完成,在添加到应用程序前还需完成以下步骤。
注意:如果在安装DB2过程中启用了操作系统安全性,则必须向DB2 Users组添加所需的用户,以便ASP.NET访问该应用程序。
1、选择Start > All Programs > Administrative Tools > Computer Management,如图1所示:
图1:导航到Computer Management
2、在the Computer Management部分下面,请选择Users and Groups。
然后,在Groups下面,双击DB2Users组。
图2:Computer Management下面的DB2 Users Group
3、向组中添加ASPNET用户和Operating System用户,如图3、4、5和6所示:
双击DB2 Users Group >Advanced > Find Now。图3显示了该步骤:
图3:定位到Operating System中的ASPNET User
从列表中选择ASPNET用户并单击OK。
图4:向DB2 Users组添加ASPNET帐户用户
现在您能够看到ASPNET帐户,选择OK完成该任务,如下图所示:
图5:向Computer Management下的DB2 Users Group添加ASPNET帐户用户
图6显示ASPNET用户现在已在DB2 Users Group中。
图6:ASPNET帐户用户现在已在DB2 Users Group中
您还需要添加Windows Login,Windows用户针对它向Debuggers Group构建Visual Studio Application。
注意:安装了Visual Studio 2005之后,会默认添加该功能。如下图所示:
图7:Windows当前用户已在Debuggers Users组中
创建好表并检查所需的属性之后,就可以用Visual Studio 2005创建简单的主从复合应用程序了。该应用程序允许用户查看属于特定部门的职员信息。您可以在Command Editor中运行清单1和清单2中的SQL语句。将SCHEMA由ANIL更改为您选择的名字或者在Control Center中随意使用Table Editor。
构建应用程序的步骤
运行Visual Studio 2005。选择ASP.NET WebSite图标。选择语言为C#或Visual Basic,如图8所示:
图8:在Visual Studio 2005中创建新的网站
单击OK之后,默认情况下进入Source View。由于本教程的特色就是不用编写代码,因此我们接下来转换到Design View。
展开Toolbox。在Data Tab下面,将GridView控件和Details View控件拖放到Webform上。您的应用程序应该如图9所示:
图9:GridView和DetailsView控件的Toolbox项
现在必须配置GridView和DetailsView数据源。在Visual Studio 2005中配置数据源非常简单。单击Grid View控件,然后在Data Source下面选择New Data Source。
选择Database并为其命名,