任务3. 1 ADO. NET实现新书信息的注册

任务3. 1 ADO. NET实现新书信息的注册

【任务描述】

新书(商品)注册是网上书店和其他电子商务网站的重要功能,通过商品注册,增加在售商品种类,使购买者能进行更加自由的选择。需要注意的是,新书注册是网站后台功能,一般购书者不能执行该操作,只有管理员才有权限执行,这中间的逻辑是显而易见的。网上书店新书注册页面的常见形式如图3.1所示。

图3.1新书注册页面

新书注册的实现过程为:系统首先对页面进行初始化,将某些来自数据库的信息填充到页面,如图3.1的图书类别信息就来自数据库;然后验证从页面上输入的新书的各项信息的基本格式,验证无误后接收各项输入;最后将新书各项信息写入后台数据库的图书信息表,同时将新书封面图片文件上传至服务器的某个预设目录中。

综上所述,本任务的主要实现步骤分为3步:初始化、验证和接收信息、将信息写入数据库。关于如何验证和接收页面输入信息,在项目2中已经进行了详细的讲解,这里不再赘述。因此,本任务的目的是讲解如何通过ADO.NET实现初始化(读数据库)和写数据库。首先将对ADO.NET的基本概念、本任务将会用到Connection连接对象、Command命令对象和DataReader对象进行介绍。

【知识准备】

(1)ADO.NET概述

ADO.NET是.NET Framework中不可缺少的一部分,由一组向.NET程序员提供公开数据访问服务的类构成,能提供对关系数据库数据、XML格式数据的访问,.NET应用程序可以使用ADO.NET的类连接到这些数据源,并可以检索、处理和更新其中的数据。

ADO.NET将数据访问过程分解为多个单独使用或先后使用的不连续组件,这些组件包括连接数据库、执行命令和检索结果。更新数据只需直接处理数据源,检索数据则一般需要放入ADO.NET DataSet对象中,然后向Web页面呈现。

ADO.NET是.NET提供的最直接、高效的数据访问方法,它允许在概念模型而不是基础存储模型这一更高级别的抽象层次上进行编程,大大方便了.NET程序员对数据的处理。

1)ADO.NET结构

ADO.NET由两大主要组件构成:.NET Framework数据提供程序和DataSet数据集。

①.NET Framework数据提供程序

.NET Framework数据提供程序是为关系数据的操作和快速、只进、只读访问而设计的组件:主要包括Connection对象、Command对象、DataReader对象和DataAdapter对象,还包括一些辅助型的对象:

a.Connection对象提供到数据源的连接。

b.Command对象用于访问用于返回数据、修改数据、运行存储过程以及发送或检索参数信息的数据库命令。

c.DataReader对象可从数据源提供高性能的数据流。

d.DataAdapter对象能在DataSet对象和数据源之间起桥梁作用:DataAdapter使用Command对象在数据源中执行SQL命令以向DataSet中加载数据,并将对DataSet中数据的更改提交回数据源。

提示:类和对象在泛指情况下意义基本相同,类似于社会生活中泛指的人和人类具有相同意义的一样,因此本书没有加以区分。

②DataSet数据集对象

DataSet对象是专门为独立于任何数据源的数据访问而设计的,它独立于.NET Framework数据提供程序,可以用于多种不同的数据源,用于XML数据,或用于管理应用程序本地的数据。

DataSet对象内部具有复合的结构:包含一个或多个DataTable内存表对象的集合,DataT-able内存表对象内部由DataRow数据行对象和DataColumn数据列对象,以及有关DataTable内存表数据的主键、外键、约束和关系信息组成。

ADO.NET的两大组件及其内部结构如图3.2所示。